{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Softmax exercise\n",
    "\n",
    "*Complete and hand in this completed worksheet (including its outputs and any supporting code outside of the worksheet) with your assignment submission. For more details see the [assignments page](http://vision.stanford.edu/teaching/cs231n/assignments.html) on the course website.*\n",
    "\n",
    "This exercise is analogous to the SVM exercise. You will:\n",
    "\n",
    "- implement a fully-vectorized **loss function** for the Softmax classifier\n",
    "- implement the fully-vectorized expression for its **analytic gradient**\n",
    "- **check your implementation** with numerical gradient\n",
    "- use a validation set to **tune the learning rate and regularization** strength\n",
    "- **optimize** the loss function with **SGD**\n",
    "- **visualize** the final learned weights\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "The autoreload extension is already loaded. To reload it, use:\n",
      "  %reload_ext autoreload\n"
     ]
    }
   ],
   "source": [
    "import random\n",
    "import numpy as np\n",
    "from cs231n.data_utils import load_CIFAR10\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "from __future__ import print_function\n",
    "\n",
    "%matplotlib inline\n",
    "plt.rcParams['figure.figsize'] = (10.0, 8.0) # set default size of plots\n",
    "plt.rcParams['image.interpolation'] = 'nearest'\n",
    "plt.rcParams['image.cmap'] = 'gray'\n",
    "\n",
    "# for auto-reloading extenrnal modules\n",
    "# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipython\n",
    "%load_ext autoreload\n",
    "%autoreload 2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train data shape:  (49000, 3073)\n",
      "Train labels shape:  (49000,)\n",
      "Validation data shape:  (1000, 3073)\n",
      "Validation labels shape:  (1000,)\n",
      "Test data shape:  (1000, 3073)\n",
      "Test labels shape:  (1000,)\n",
      "dev data shape:  (500, 3073)\n",
      "dev labels shape:  (500,)\n"
     ]
    }
   ],
   "source": [
    "def get_CIFAR10_data(num_training=49000, num_validation=1000, num_test=1000, num_dev=500):\n",
    "    \"\"\"\n",
    "    Load the CIFAR-10 dataset from disk and perform preprocessing to prepare\n",
    "    it for the linear classifier. These are the same steps as we used for the\n",
    "    SVM, but condensed to a single function.  \n",
    "    \"\"\"\n",
    "    # Load the raw CIFAR-10 data\n",
    "    cifar10_dir = 'cs231n/datasets/cifar-10-batches-py'\n",
    "    X_train, y_train, X_test, y_test = load_CIFAR10(cifar10_dir)\n",
    "    \n",
    "    # subsample the data\n",
    "    mask = list(range(num_training, num_training + num_validation))\n",
    "    X_val = X_train[mask]\n",
    "    y_val = y_train[mask]\n",
    "    mask = list(range(num_training))\n",
    "    X_train = X_train[mask]\n",
    "    y_train = y_train[mask]\n",
    "    mask = list(range(num_test))\n",
    "    X_test = X_test[mask]\n",
    "    y_test = y_test[mask]\n",
    "    mask = np.random.choice(num_training, num_dev, replace=False)\n",
    "    X_dev = X_train[mask]\n",
    "    y_dev = y_train[mask]\n",
    "    \n",
    "    # Preprocessing: reshape the image data into rows\n",
    "    X_train = np.reshape(X_train, (X_train.shape[0], -1))\n",
    "    X_val = np.reshape(X_val, (X_val.shape[0], -1))\n",
    "    X_test = np.reshape(X_test, (X_test.shape[0], -1))\n",
    "    X_dev = np.reshape(X_dev, (X_dev.shape[0], -1))\n",
    "    \n",
    "    # Normalize the data: subtract the mean image\n",
    "    mean_image = np.mean(X_train, axis = 0)\n",
    "    X_train -= mean_image\n",
    "    X_val -= mean_image\n",
    "    X_test -= mean_image\n",
    "    X_dev -= mean_image\n",
    "    \n",
    "    # add bias dimension and transform into columns\n",
    "    X_train = np.hstack([X_train, np.ones((X_train.shape[0], 1))])\n",
    "    X_val = np.hstack([X_val, np.ones((X_val.shape[0], 1))])\n",
    "    X_test = np.hstack([X_test, np.ones((X_test.shape[0], 1))])\n",
    "    X_dev = np.hstack([X_dev, np.ones((X_dev.shape[0], 1))])\n",
    "    \n",
    "    return X_train, y_train, X_val, y_val, X_test, y_test, X_dev, y_dev\n",
    "\n",
    "\n",
    "# Invoke the above function to get our data.\n",
    "X_train, y_train, X_val, y_val, X_test, y_test, X_dev, y_dev = get_CIFAR10_data()\n",
    "print('Train data shape: ', X_train.shape)\n",
    "print('Train labels shape: ', y_train.shape)\n",
    "print('Validation data shape: ', X_val.shape)\n",
    "print('Validation labels shape: ', y_val.shape)\n",
    "print('Test data shape: ', X_test.shape)\n",
    "print('Test labels shape: ', y_test.shape)\n",
    "print('dev data shape: ', X_dev.shape)\n",
    "print('dev labels shape: ', y_dev.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Softmax Classifier\n",
    "\n",
    "Your code for this section will all be written inside **cs231n/classifiers/softmax.py**. \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "loss: 2.317495\n",
      "sanity check: 2.302585\n"
     ]
    }
   ],
   "source": [
    "# First implement the naive softmax loss function with nested loops.\n",
    "# Open the file cs231n/classifiers/softmax.py and implement the\n",
    "# softmax_loss_naive function.\n",
    "\n",
    "from cs231n.classifiers.softmax import softmax_loss_naive\n",
    "import time\n",
    "\n",
    "# Generate a random softmax weight matrix and use it to compute the loss.\n",
    "W = np.random.randn(3073, 10) * 0.0001\n",
    "loss, grad = softmax_loss_naive(W, X_dev, y_dev, 0.0)\n",
    "\n",
    "# As a rough sanity check, our loss should be something close to -log(0.1).\n",
    "print('loss: %f' % loss)\n",
    "print('sanity check: %f' % (-np.log(0.1)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Inline Question 1:\n",
    "Why do we expect our loss to be close to -log(0.1)? Explain briefly.**\n",
    "\n",
    "**Your answer:**\n",
    "\n",
    "Because the weights have been initialized with very small values, which means that the scores for each class will be very similar. Score for the correct class will be $y_{pred} = \\frac{e^{WX}}{num_{classes}*e^{WX}}$.\n",
    "Since we have ten classes it will be 0.1.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "numerical: -1.200424 analytic: -1.200424, relative error: 3.307609e-09\n",
      "numerical: -2.147358 analytic: -2.147358, relative error: 9.232322e-09\n",
      "numerical: 1.830088 analytic: 1.830088, relative error: 2.953361e-08\n",
      "numerical: 1.189165 analytic: 1.189165, relative error: 4.946790e-08\n",
      "numerical: -1.424605 analytic: -1.424605, relative error: 1.501516e-08\n",
      "numerical: 0.159934 analytic: 0.159934, relative error: 1.809024e-07\n",
      "numerical: -1.824732 analytic: -1.824732, relative error: 9.594166e-09\n",
      "numerical: 0.510027 analytic: 0.510027, relative error: 1.194403e-07\n",
      "numerical: -0.659294 analytic: -0.659294, relative error: 4.413427e-08\n",
      "numerical: -2.176103 analytic: -2.176103, relative error: 3.562129e-10\n",
      "numerical: -2.488763 analytic: -2.488763, relative error: 1.222228e-09\n",
      "numerical: -1.477121 analytic: -1.477121, relative error: 5.973047e-09\n",
      "numerical: 0.035120 analytic: 0.035120, relative error: 1.692991e-06\n",
      "numerical: -0.029273 analytic: -0.029273, relative error: 2.909252e-07\n",
      "numerical: -1.048017 analytic: -1.048017, relative error: 3.846975e-08\n",
      "numerical: -0.060869 analytic: -0.060869, relative error: 6.665507e-07\n",
      "numerical: 0.698120 analytic: 0.698120, relative error: 9.216306e-08\n",
      "numerical: -1.061120 analytic: -1.061120, relative error: 1.127576e-08\n",
      "numerical: 0.739883 analytic: 0.739883, relative error: 8.341230e-08\n",
      "numerical: 0.198599 analytic: 0.198599, relative error: 1.412200e-07\n"
     ]
    }
   ],
   "source": [
    "# Complete the implementation of softmax_loss_naive and implement a (naive)\n",
    "# version of the gradient that uses nested loops.\n",
    "loss, grad = softmax_loss_naive(W, X_dev, y_dev, 0.0)\n",
    "\n",
    "# As we did for the SVM, use numeric gradient checking as a debugging tool.\n",
    "# The numeric gradient should be close to the analytic gradient.\n",
    "from cs231n.gradient_check import grad_check_sparse\n",
    "f = lambda w: softmax_loss_naive(w, X_dev, y_dev, 0.0)[0]\n",
    "grad_numerical = grad_check_sparse(f, W, grad, 10)\n",
    "\n",
    "# similar to SVM case, do another gradient check with regularization\n",
    "loss, grad = softmax_loss_naive(W, X_dev, y_dev, 5e1)\n",
    "f = lambda w: softmax_loss_naive(w, X_dev, y_dev, 5e1)[0]\n",
    "grad_numerical = grad_check_sparse(f, W, grad, 10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "naive loss: 2.317495e+00 computed in 0.008702s\n",
      "vectorized loss: 2.317495e+00 computed in 0.007662s\n",
      "Loss difference: 0.000000\n",
      "Gradient difference: 0.000000\n"
     ]
    }
   ],
   "source": [
    "# Now that we have a naive implementation of the softmax loss function and its gradient,\n",
    "# implement a vectorized version in softmax_loss_vectorized.\n",
    "# The two versions should compute the same results, but the vectorized version should be\n",
    "# much faster.\n",
    "tic = time.time()\n",
    "loss_naive, grad_naive = softmax_loss_naive(W, X_dev, y_dev, 0.000005)\n",
    "toc = time.time()\n",
    "print('naive loss: %e computed in %fs' % (loss_naive, toc - tic))\n",
    "\n",
    "from cs231n.classifiers.softmax import softmax_loss_vectorized\n",
    "tic = time.time()\n",
    "loss_vectorized, grad_vectorized = softmax_loss_vectorized(W, X_dev, y_dev, 0.000005)\n",
    "toc = time.time()\n",
    "print('vectorized loss: %e computed in %fs' % (loss_vectorized, toc - tic))\n",
    "\n",
    "# As we did for the SVM, we use the Frobenius norm to compare the two versions\n",
    "# of the gradient.\n",
    "grad_difference = np.linalg.norm(grad_naive - grad_vectorized, ord='fro')\n",
    "print('Loss difference: %f' % np.abs(loss_naive - loss_vectorized))\n",
    "print('Gradient difference: %f' % grad_difference)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "lr 1.000000e-07 reg 1.000000e+03 train accuracy: 0.230204 val accuracy: 0.245000\n",
      "lr 1.000000e-07 reg 5.000000e+04 train accuracy: 0.331449 val accuracy: 0.340000\n",
      "lr 2.800000e-06 reg 1.000000e+03 train accuracy: 0.404347 val accuracy: 0.375000\n",
      "lr 2.800000e-06 reg 5.000000e+04 train accuracy: 0.297041 val accuracy: 0.292000\n",
      "best validation accuracy achieved during cross-validation: 0.375000\n"
     ]
    }
   ],
   "source": [
    "# Use the validation set to tune hyperparameters (regularization strength and\n",
    "# learning rate). You should experiment with different ranges for the learning\n",
    "# rates and regularization strengths; if you are careful you should be able to\n",
    "# get a classification accuracy of over 0.35 on the validation set.\n",
    "from cs231n.classifiers import Softmax\n",
    "results = {}\n",
    "best_val = -1\n",
    "best_softmax = None\n",
    "learning_rates = [2.8e-6, 1e-7]\n",
    "regularization_strengths = [1e+03, 5e4]\n",
    "\n",
    "################################################################################\n",
    "# TODO:                                                                        #\n",
    "# Use the validation set to set the learning rate and regularization strength. #\n",
    "# This should be identical to the validation that you did for the SVM; save    #\n",
    "# the best trained softmax classifer in best_softmax.                          #\n",
    "################################################################################\n",
    "grid_search=[(x,y) for x in learning_rates for y in regularization_strengths]\n",
    "for alpha, reg in grid_search:\n",
    "    softmax=Softmax()\n",
    "    softmax.train(X_train, y_train, learning_rate=alpha, reg=reg, num_iters=1000)\n",
    "    y_train_pred=softmax.predict(X_train)\n",
    "    y_val_pred=softmax.predict(X_val)\n",
    "    training_accuracy=np.mean(y_train_pred==y_train)\n",
    "    validation_accuracy=np.mean(y_val_pred==y_val)\n",
    "    \n",
    "    results[alpha, reg] = (training_accuracy, validation_accuracy)\n",
    "    \n",
    "    if validation_accuracy > best_val:\n",
    "        best_val=validation_accuracy\n",
    "        best_softmax=softmax\n",
    "################################################################################\n",
    "#                              END OF YOUR CODE                                #\n",
    "################################################################################\n",
    "    \n",
    "# Print out results.\n",
    "for lr, reg in sorted(results):\n",
    "    train_accuracy, val_accuracy = results[(lr, reg)]\n",
    "    print('lr %e reg %e train accuracy: %f val accuracy: %f' % (\n",
    "                lr, reg, train_accuracy, val_accuracy))\n",
    "    \n",
    "print('best validation accuracy achieved during cross-validation: %f' % best_val)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "softmax on raw pixels final test set accuracy: 0.399000\n"
     ]
    }
   ],
   "source": [
    "# evaluate on test set\n",
    "# Evaluate the best softmax on test set\n",
    "y_test_pred = best_softmax.predict(X_test)\n",
    "test_accuracy = np.mean(y_test == y_test_pred)\n",
    "print('softmax on raw pixels final test set accuracy: %f' % (test_accuracy, ))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlMAAAF8CAYAAADrUz6WAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvXtw49d153l+AAiAAEEQBPh+ga/mu8lmt7rVUrfUelvy\nQ46dxLETZ5I4qc1udjNbszO7mZqp2uxOZmcrO6mtzE7V7I4n40wejh3Ltixbki1ZUkvqd7f6wW6y\n+Sb4fpMgiTcIYP9o+fe51DhWK4RbdnS/Vao6An/44d57zr2/X3+/95xr5HI50dDQ0NDQ0NDQ+PvB\n8mE3QENDQ0NDQ0Pj5xn6ZUpDQ0NDQ0NDYx/QL1MaGhoaGhoaGvuAfpnS0NDQ0NDQ0NgH9MuUhoaG\nhoaGhsY+oF+mNDQ0NDQ0NDT2Af0yJSKGYZwyDGPuw26HhoYGMAwjZBjG4z/m85OGYYx8wHv9uWEY\nf5S/1mloaIjoufUj6JcpDQ2Nnyvkcrm3c7lc24fdDo17i7/r5VpD42cB+mVKQ+PvgGEYtg+7DRof\nDNpnGho///h5nMcfqZepd/9l888NwxgyDGPTMIyvGIbh/DHX/YFhGBOGYey8e+0vKH/7DcMwzhiG\n8W/fvceUYRhPK3/3GobxZ4ZhLBqGMW8Yxh8ZhmG9V33UAIZh1BmG8S3DMFYNw1g3DOPfG4bRbBjG\n6+/+/5phGH9tGEaJ8p2QYRj/i2EYAyIS/Xmc1P/AcN975+t7Zfkf5zPDMA4ZhnH13Tn8dRH5r+a5\nxoeHDzo3DcP4SxGpF5HvGoYRMQzjf/5we/DRxU+aW4ZhfMIwjOuGYYQNwzhnGMZB5W/VhmF8812f\nTxmG8fvK3/7QMIznDMP4K8MwtkXkN+5pp/KAj9TL1Lv4VRF5SkSaReSAiPzLH3PNhIicFBGviPxv\nIvJXhmFUKX8/JiIjIhIQkT8WkT8zDMN4929/LiK7ItIiIodE5EkR+e2890LjJ+LdF9jvici0iARF\npEZEviYihoj8GxGpFpEOEakTkT98z9c/LyIfF5GSXC63e29arPF34G7mq4jiM7mzrj0vIn8pIqUi\n8g0R+exPvaUad4W/z9zM5XJfFJEZEflkLpcryuVyf3zPG64hhmHY5e+YW4ZhHBKR/ywi/42I+EXk\n/xORFwzDcBiGYRGR74rIDbnj78dE5H80DOMp5fbPishzcmcO//U96VA+kcvlPjL/iUhIRH5X+f9n\n5M6L0ykRmfsJ37suIs++a/+GiIwrf3OJSE5EKkWkQkSSIlKo/P3zIvLGh933j9p/InJcRFZFxPY+\n131aRK69J0Z+68Nuv/7v7ufre30mIg+JyIKIGMpn50Tkjz7sPun/9j03H/+w2/9R/u8nzS0R+Q8i\n8q/ec/2IiDwsdwiImff87Z+LyFfetf9QRN76sPu3n/8+ihLGrGJPy51/Be2BYRi/LiL/RO78q0lE\npEjusFA/wtKPjFwuF3uXlCqSO2/qBSKyCFEllvf8psa9QZ2ITOfewywZhlEhIn8qd5hHj9zxz+Z7\nvqv99bOD952vP+a6ahGZz727Sivf1fjZwH7mpsaHi580txpE5B8ZhvE/KH+zv/udjIhUG4YRVv5m\nFZG3lf//uV53P4oyX51i18udt2wThmE0iMiXReS/FxF/LpcrEZFbcoeCfj/Myh1mKpDL5Ure/a84\nl8t15afpGh8AsyJS/2P2PP0fcodJ7MnlcsUi8mvyX/s2Jxo/K/iJ81WB6rNFEalRpPcffVfjZwN/\n37mp5+WHj580t2ZF5F8rz76SXC7nyuVyf/Pu36be8zdPLpd7RrnPz7V/P4ovU79nGEatYRilIvIv\nROTr7/m7W+44dVVExDCM3xSR7ru5cS6XWxSRV0TkTwzDKDYMw/LupsqH89d8jbvEJbkz8f9PwzDc\n725cflDu/Is3IiJbhmHUiMg/+zAbqfG+eL/5+uNwXu7sW/x9wzAKDMP4jIgc/Wk2UuMD4e87N5dF\npOneNlXjPfhJc+vLIvK7hmEcM+7AbRjGxw3D8Mgdn++8myhSaBiG1TCMbsMw7vuQ+pF3fBRfpr4q\nd154JuXO/os9xcZyudyQiPyJ3AmaZRHpEZGzH+D+vy53qM0huUNRPyciVT/xGxp5Ry6Xy4jIJ+VO\nIsCMiMyJyOfkTkJBv4hsiciLIvKtD6uNGneFnzhffxxyuVxKRD4jd/Y3bsgdv2s//4xgH3Pz34jI\nv3w3U+yf3rsWa/wIP2lu5XK5KyLyOyLy7+XOs2/83et+5PNPiEifiEyJyJqI/Ce5k+T1DwLGXunz\nHzYMwwiJyG/ncrkfftht0dDQ0NDQ0PiHgY8iM6WhoaGhoaGhkTfolykNDQ0NDQ0NjX3gIyXzaWho\naGhoaGjkG5qZ0tDQ0NDQ0NDYB+5p0c7/62+umzRY2auvmp9PN2RMe72UmnyBggrTttdNmnb2qz7T\nHnBzfa+Xuny35qgNtutOmHZnhPaED7pNO7pWa9r+cn4rsTJl2s4N8wi3O99p5LivrZyD7y9zFN+u\nC7t4wW/a6bIVfuMACQ2l1jbTXh6+YNoL6+Wm3dUSM+3suVLTPtpDCZ4b29S666poMO1f+qN/dDf1\nst4Xf/Ab/9T0ZXlL1vx8t7/DtIvO0sdC+6JpT83Rno7b3zdto48xvODDH4a/0LSfisdN+611/i3g\nry027UzBmmk3L5B5ezE+YdreMu4pIuILFZi2p5DSRpbqcdN2tVFjcMBLIHUvnjDtwtiOac8m8Ydj\nBZ/ltntNezeFO6wdY6adHiRm34y5TLvFSJn2//6Vf5UXX4qIfPn5XzP9uZlm3hXWMN5Lk1umfX8N\n7fvzEY9pn5plHJNNN0x7Z1BpajuxPJdhTvjGuU+qid/q3Coy7XNlxFpbmnumHS17+rNbcNm047Ow\n79uLZNZXHFHaFwia9kNr+Op7o3bTdhUQw7vWGdOObbEunGBJkXn7umkXBu437ayNWI07iK8/+uIL\nefHnf/ePv2R2uDFBf11O5uNOCQ0tSw2bduT7+Cb5+/jYuNln2iWOF0272P4x076yTX+P9zE3Q3/L\n+D/h5/NvBZhPDbexs8/SThGRyKvExYkOxm5jhTVuspbfNsaIqYif9TdTip+CG6zdRdkR095q5ll0\nY5Y1qNrLWAQ38b11LW3aL1/ncfrvBr6Tt7n5yd97whzAB2KUS+uOUb5wqZh1Z66T9c+R4PnQEDWP\ns5RQCXPKOsXcSTzIGtwR4nm6UMC6s7NDTBV4uCa1ztyMH2DdcPrwh4iIZcWseS3FDXz/SuqUaTd+\nnfW1sY8xjtuSph1e5lk5l2DdKY38gDY1m0cDSk/2LdMen6w07c1C7m9/i2dT2WcvmfYf/K+vv68/\nNTOloaGhoaGhobEP6JcpDQ0NDQ0NDY194J7KfLEBKO1ZO/TjUuQd07Z2Q785/y1U/XoLBYztgWum\n/bgDeniiGsqw0Y68Y/NAy5ZWQDnvhBQKOACFX5FDIty0PWnazU2De/rz/TrkgI7BQ6a9tnvRtAsD\nHOm3W007ZKXGNGtiG6btW6HPM1vImYdOtpp2ev0V016oRa4Kebl+LcE9J23QmPlCUzU0bE0TFHhg\n86ZpD1Ui+VW6kW3e8K+adnkHfvJPwKQ29kBDByaRY8bLH6ANhUgVpZlR014rgFbOFEI3t/dBT6/M\nKr4QkeGnkbb6/uQN0w4fhD53XER+eML6mGm/GCBeesPQ0NLAGM01M9W8CeSGTISYWlojBivby0y7\n7RIyx0410m8+ceYS8savBhizG7vEV8UsPhyY5PNP+pEeRi23THv3m8R+xROMY2YxaNrxwpBp99Yg\nqa2PMqbne4mvYz7+/Ze8yZxI9KlHfoksztCf0giyakvT66Yd2znF95OsTbduD5n2oRrkrQt+ZJ+i\nRfqWbaZN1xqQQ05s/oJpLy8hsSQUFau8ibblC5/sYG09t42EZ1nlt/pSUdOeTeNX50NINdmLzKPa\nQ9dNe+dV5KWdw6zFLQvM2clXmcv1n2SevjDK+JR6+a1EkLVr9vrex9LRAto6tYAMlRxAkjQKmb+1\nJ5H/rr7GGv+QFR8M+5H5so2HTXt3Bcnv08u04+Vh2rr5Kdbu1gxzvDzLPfOJWAB/Jre3TXvEiVy2\nKXzeEGEsp3lEyflx4tRWiywWPIhPErdZd6Zc3CeeYyy2rKzfxYqsHasnvpqWiKnJDSRYEZH+Gp5N\nI0w7aQgTq1NHFDnPgfTWbvC831hirWn1sHZ4HPjz1unzpn36PtrnrmK9KCrCb5tPcM/yUcbibqCZ\nKQ0NDQ0NDQ2NfUC/TGloaGhoaGho7AP3VOab3YE2riqCBiyobOaim2Q0Tfy37ab9xJtIPW8fVeSA\n89Cs1mGkwOVyMqnaJqFolxahHMeaoaUfHeael11kc3Uk5017PN24pz9du9DMY0XIL61rZBkMZqFK\nO5e+RrsjZKWsxrhmyMrvdR+Dox1dgIptW0D2qYwxjkM56FeHQI3vOh+RfOOlRdrzy3b6u1MFxT63\nhFxW7nvUtF2b3zVtb7GSkfEocZBSsuts5UHTLr5FdqW/Fjr3zPCD3LP5P5r2mCJxrr4MRRzsRwYS\nETn+FaQd+6Ejpr1yBip9o/WAaZe5e0x7OPVfTPuJOuVM6xF+26qczriTgZJPepD8YhbO0y5c5hp/\nJ1z40EtQ3vlEdQqZ5LUcclblrQHTXnIhwdvC+CdWfca03Q7mSMXjSGH2VfqT9SFbuMqI5YUV2uDt\n4fPHChm8RJg5seLGh0dRDkREZDZ90rQLAsz/sI81ZXUHycg6hT8X65StAGPImc4q5M+qAPM0kUbm\nLIwSY3PbrAmJHdYXby/9jNeSOZwvTGwRp/4ca0ukQJEj51k3LEVc43HTl1oHEtnGMnEX8zPYkRvI\nfF4PsqszSHvW3cRTwQIS2bXk26b9cCWSisdJNpqISPkU/h90MR/LuojBcAnjHnmNDO9GP/fanFMS\nsjaJiZDBtom6ab47VMr63plgjMK3yBZbKVMy4Up+Omdp/2oSX71QwHPjQBWfuxX/rO4qWaeNbG0Y\nt7Fmf1rwyegY0mZpA31eTr5m2lWuT5v22vysabscxPLMFBJZzEEs9BYoWqCIfGv+IdPuSSLhx13o\n3+4qMtzjF1hHU134YSnA53VH2bax7FQkvEL6c6CZ2LsQYj46a5AXm6fZvrHQypabu4FmpjQ0NDQ0\nNDQ09gH9MqWhoaGhoaGhsQ/cU5mvsw06dTMELZnJQCfXCdRdyzRFs6azZNU0KxLQhBs7l4J63w5B\nh75+CFr68HlkCEcrtOLGI9DER6eV7EKF9g6v7s0Y2naQPRjcQVaIeL9j2k/uQgMv+Chwd9hHtsIN\nhXL2u6C0d9eRNB6t4713LAddO1FGu4smGNP0JvJnrkHNplAk1X2gOaRIkEGo98YoEo6jEQr4wjxF\nWm1WJJzxItrTPEJG3rANCa9sHrlovYnxKZ8hO8fbR6zM2T9p2iO7+PipsrOmPTOtZN2JSKiV4m6x\nHe5lraEdWQfxlYuSnfaoCyp9c4P4XcsiGZRX0ofFYTKjapKMhTIs4oWRlull7umL0YZ8orMfCX6j\nDKm9+QrjciOBJHXYjaQ8liEb5lgv8Xh1kLhIepEIP64UHg0uQLfvBJZN2xFg7MZv46uKCP4v8rFu\nRGaQEUVEbhQxmHVppB73MvPIW4vfSq34ZGYKieG2UnzwyCbFU6susR5dP8b87R5ji8BkB3HkDSL/\nBlFhxKMUoc0XCneI83Rlp2nvrDKOlUdZE3JD+C+lrEWX7awhHfXEXXAeGdRV8YRpX80itXzSgZ/O\nL+LX2jrixjpOXBs21tymquCe/lyL4OewDx/MlGJXDuB/i591oYhLxOImBj0lxGb1IlsN1k8w3523\nXzbtMh9SVdLJTQ2lwG/hOvJXPjF0nW0Hh55hfvmXmTuTVrZ12O3IvFtzxNfvKlswrjRyz4oLjP1k\niLnvr2XrxNwtMtSbfgnpu/hbSO2HYzwTZhvxx5mmvXPTMs/WhkcO8rdvniA2qi/yXHDfr2zlmcBv\nlhom0tosmePTSzyXLQd5Hg2n2PrTXUMbJl5k7Qv0MUcaN9kScDfQzJSGhoaGhoaGxj6gX6Y0NDQ0\nNDQ0NPaBeyrzXdyBTj2yQyZHug769YqVDIWKJbKbwqVQcbFu6L34MJRzUOlNVpFJAglo2fRT0IoF\nMb6bsEB7h1NIdhtvQkVPHVE4YxFxLEKJHy0nI8CohfodmCSDxJ48Z9quY1DfaQ/Zdv4kNOPVNbKN\nUtO898aHoVYT90PjVoboz3o1bXXXqAUq85NxkjhIsUnHJhkWOwVkTxR6kcI8OWSbjVLlHK63Gff0\nw/S3dEOJj2LiI2KjX6tHoP93ziDfjjeTmXdEKZD5nI146ikmK1BEZO3AU6ZtXySDLVBM+3YC0Ntr\n1/B3ro6CrRtDUP25CiToqXmkpuU6RWKc58y2yjJk8NG3yTT15qDz07UUncwndpXsT+95pO2Xi8mi\n7bUif6WrifGqEH57LY7Puw8wdkuKxPSSk3GRDBO1h5+VM1HG65gSRxuTzH2XjXn6vQRShYhI3Qay\njM+NPB8LIrsXrodMO5VmXVhKMmfvtxB78RXi6mwVhSsDBrE0UqVkia4yZ2ezjG8yjGTWvs52BGEX\nwL7gyyhS4+vETsVhJBLbFHLWSh1Zh9E4i+iDTuTYaxl8nC5Fjm/c4bdSBawJf5ZG1j60Tn+nBCnI\nHcRH9jiybGSGeS0i4j5GIWAZI158JTxPbBYyakfLuea+CFmCZzIh0364AgnrnTjyT/EI53fmvIxF\n2MvcD2/9omkbi0jf5bOKTp9HlHyGuZDdYg7ebCBO6xpYU+UbbK8I5pCazxcyFjalSO+1+OOmbcTI\nrtsJsJYdCPP8taF+yvNtynmdbu6fCrOGepw8l0RETq3Shx/2Ef+2/5tnU0Efz8dVZcuOrxx5vWni\nuGkP7CDTP7FFbC99in5a/zPrSFWMGN68n/VoOkGWo71EqSh6F9DMlIaGhoaGhobGPqBfpjQ0NDQ0\nNDQ09oF7KvM500gucwVkgZRFkRKetigFL9fILPBUQrM+EIHSfF3ZcO+bRnZ7zQ+d3D/H9fHzUMtG\nObSfrHzCNLd6aE/tYWQ+50XlehHZPgLNejlNu/uiFDtLlgX5fBda8iWlKGOtm/tURRXa0+Bdd1TJ\n1niok/PsFoYZI1sD1xT0Ml7W2fyfGeWZgxotaKLgYUvDD017ZQBJJeQmq8Ibh7ae/nU+t45AB5cd\nJzQjP0Bu2Czn+k0r/rYfQ8LrteDvm9cYz9+qQ6Y5rRRzExEpOEumy04JfesvgSa+OUT8LgWJr+gk\n0kBGqU9n24ICt9bh45Zz/PaiEwkk7SC++n387qCTTJXkBlk4+cSCgRS8pMgHhQsnTPuMjWua4vTN\n24QU1uFkHOUClHlTGF9NlCP5dtqRSV6NKP7MMFfCOdqTaQuZ9rX5K6YdKEVqFhEptytn57UQG7KC\n3DhQQYaSosJJQz1S8lSWWH08gaSVrCdLNL2MT+pbkLpubhCrlsPES+AyMVnYo1RzzRMmlhnf1k4y\noUZjypl1lmOmXWFn3iVXkHO8RVdNu96hSDhOpMNRG3MiOkIWlbsW6TPZhm8WhllPD6zxW5FCpLbx\nt/aus2U21kF/gLhLblJUcfIx1t/Ci/g+cRDHfu4HxPKLHcg8WS8FJpsKGIslG9+tW0XCS1comcwX\nmMvRWp4b+cRsgbIedfLcWP8Ba/zUHGtw9wGKJZ928HmfH5nXufuCaacnkN1aAmQCLqwx7uXKmjhX\njc8LNpDjym0sfresPJiblcxJEZGBatpd8BbjnWli68SNWsa44ibxcGyCs1kvHiNrs+ISz8RwJb9X\nOcCzYKmZuXA1TbZg7RbPGmcL665rlezCu4FmpjQ0NDQ0NDQ09gH9MqWhoaGhoaGhsQ/cU5nviECx\nL85BOduPQJ9fP4NsZQ2QrbPZwPVDm7wDNg4iYZ1OQlG22aDhc4ok0V4FrTjRgnzSOAClvRiHAlwI\nk5EU9SNbiIhUppEoqgrIfJj38/1dRbp6cZsMrc/noDEXjyBjjZxBGvDfhwTU70YCuTFAf+yK1LW6\nBhVveQuqO+pFhsob1qF6/W3Q7Te+Dr178FnoVlcXxR9v3mTc+l6lbQWHGN+RISjfolXG01WMlJC2\nM4apNNJqZIo4K20j++taDRSxxbk3U2NhEfmh0GBMv75FYUfvNr4sv8H3facY601B0phNKv2PIBnU\nHKRNJ1zQ9jezFF2dX1XkjK6Qaa9e35uFmC/4Z8jWclqRZ4cStK/PTqbPlg2palJJYAtOUyQyVgI9\nb/sUc+32BJk+0xHiyPE92lBXh1xW9jBneW1fZe5br+CPnvvJYBIRcXciOdx0kEXbXEjMPKQUn5w5\nhxxiFJNJWtBPzFxrwW8bPuKwxc+8Di/hQ1eaubB1+3nTTid7TXvZitSYL9RUIWHNWZHS6pKMyVqO\nM/Xq3sSvQ43E11SMOVu1iNw5sUHmZLsiEWbrkBer57ln2kbR5KY1so/fdt027c+FmGdT/Xv/jT+7\nzlhvxJCVsnFip7dBOU/RyecLOeb15S/Sh4pLjIujDMkr4jhl2qtKQU57ORmh1nXmZmcvGWgvb9G2\nfMIfI831K+NI25kqHt/ds4xZcRbJs2Wd55d9gzhNtyJbGjGeOUsnlO0V55g3k24y5OYcbOUo9BMj\nocP4tvY2z7SSwb0yX9JOHG6VkG1oOJkvlS/wLCuuYIy/sYAfPGeQZzs8nC+4W8jvbfZ+0bSn/ycy\n/oqqQ6Z9/hn6dmqTtSlt2bt14P2gmSkNDQ0NDQ0NjX1Av0xpaGhoaGhoaOwD91TmO+OA+j0QwN64\nhWSwq5wdl8sqZ3t5oGULJ6EJO1rYcT8dgTauXKGo3pAH2WcpjdzStU32xUtJaMWO21yzcpAharGQ\nPSAisqNQ2RvbyAQNZUhARheyR3L2lmlf2iKzYE6pN/gpH999Pk2mz9EJJAaHImG4rtDnVuunTfuW\nC/nAKISWzheKyhmvlW2yrZ58UslOKkIuWx+CVq4uV2QxpWjh8gLjvplWMn1ySIEzFYxnl1LMclLI\n2PKewC8vLiE15caIg+7Q3gzHqhooZu8uGTpxBxpW9gBS7q0HKCwYuIGMUd5FVlIgAX2eXiJD7No8\ncshODW1dsiFDNAeRLWriZKRcUGSkfCKuFDctSiOp9/fTpkSKwqjRSSS5YAV+W43Tz2Qh4xI4T4zU\nVyPHzyeI37J64vpqPYUXaxJQ+K5dMgef+S3mhHGbWBARubBK5qEtSEzeGGO9OLQeNO3008iK8RzZ\neSdSSBe3IsifNUtIAMk4/Z/tRmIrjSgZnBkkiUglPi/8IbEgT0peYF3kHMDCWmSRZR9bH6q3gqY9\n3MH8iqwRX9OGUlC0AWm+3yD7a8RgPC1O1hmjiXlTPM81niv44shvK2eMVjNPe3b2rleJLEVxx23I\nMNnlkGlfucJzoyhLLHhWWXMDO0qWajH3DNc9bdq7CxQIzSpjZN8mnpJJ1iBjlO0ID3X8dLiJTCF+\n6L1Nmyx21jOLh/ViNIO0OVzDGlR8Av8frGX9rhxTzqhVMvgiQQoZe3aRx9uXKZxpDzA/LK8jxwY2\nWV8TDiWORMRXhRxaUtBv2nVp/PZGO8+ItjDy5CU7MXPEzZydyxG3/iJkzpm//Kppu54lbtdT9M21\ng7SdW+Kd4IKSpfuP5f2hmSkNDQ0NDQ0NjX1Av0xpaGhoaGhoaOwD91Tma08pxfC6oPSeeA7a+0Y1\n9HCykp3+1eeQcVpdyAHX/cgtTdN8d7n9LN+9CgVc0BU07YFBJRuoHxo7PE2BsvgacuFYLUUfRUT8\nzWR7bA2SAbTiJvtia5RsqMoi2h1TziBst9OHNyqVQnFJZJKogaxQdZaibNYSXDjm5LfCXiS2fhfn\nv+ULtcW0f26d/nr8+Gw6idxwY57MxEcM4mBCoG2LbNDWmXlknqSS3RN2QRmnzpEB5GxBqth4Czm2\nq45zpxIbUP7rub2ZGqsepLTWGSh9S5pY8NcSs42jfJ6bgoZOTSJjJKPICpEy2tdlIXPUEDJJnvUq\n2XI+7p96lTh1fg7ZJp9YbOa371sk8y6xCTV+y8t4bxURmyXel7AdxEJFhPPPhh5DSug5i6To2WAO\npYv5/L4ixqt4gO/eLkG+Dk8zrx/O7JUSHGm2CBy6gP2OlfG+4UCiKIpSSLAthUQx3qVIKYJkUl5C\nm6LLrBHpOvy2OUxctDFcYvEwT63PKGeq5QmLfcT2lSX6/mCWzKuCaeTbdh+SV0EF8WVzIMf07xD7\nf+Vm/jbV8fmhYdbc2WKyqFx9ShZZBxJUwRhtGB9kDKee2Zv9dWqF76zHgqZtbcTnEYO1f3WerRLe\neSSf3Brr7OIhpEfjFuvLfMejpv3YFNlfkRTS3jWDeX3qKHE6vcw45hO7yjgV+JCzIuP8ts3Ksyl+\nHxJe9RxzuXqKWFuIM6ZBA8mrTMn83lbq7x6w0ef4BnL3knImbbGy7SIb5jk29Zt7XzPa3kEy3HEy\n76LtrEHO0Hf5/AAybKuNtf2NMp6nnZdZI5XawmJtQj4ucbFFwJtib81GEc+yTBHtaUbNvCtoZkpD\nQ0NDQ0NDYx/QL1MaGhoaGhoaGvvAPZX51uLQvQ03oVAHmqHV/X6o9OgyGTBTq8hBtz6DTCLDFPQ6\nUAyX3lZDxtBLOWjpWidFzBx1ZHCFEmQGpJQCbT4LGVyTGShAEZFVJdvFNQm1XjwH5Th55HumndyA\nKvbucK8hN7R/zwhnFpZ7yTJIu6G+LQq9vWRRzvxa+w5tyz5r2peK6cOvSn6wKfjgkRRjPbSGzDXz\nENJnU1gpkDhGcU5/Fhp6Mk3xT4somUEXyJSsqef9/7YiTZ2LkC3YaSUtan4birzaxpiPbu6V+Rps\nyIrDTiSA+gBZJVVRJUsmBO3dVkz8nrUgC31MOSNqahH5x1dGzO6UIy/vKIU63VtKlswJxvT6C8qZ\ngr8neUPTAHNt/SGWha0Z7Iop5mAkSMw6t5Fzh+mmNAaQAHynmYPrDdzH6kN6mZ1n7I6PMqbrAWSL\noy7O7KtPHL5RAAAgAElEQVSw/MC0X3VyTxGRUsE/k4XMu06l3S/HmDtWqyLZl5CROacUFa0owT8x\nF+vIzRsh0/ZH8E+uAlnljJLB9JSSLbw4g3QqpyQv6KhHn/EqZ2gOWZE86jzEv3OGeZesU7IoW8je\nDJXRl75B1vHcFPLaucynTNsy/W3TvlD6mGnH3Yxnj42tCP6nGXPvLkVNRURm08q2BhvjtS5KRmkl\na4R98k3THvUiBfU+SowsJojremXeVa/wHDiTYU2xxVl3tp9CCpv4G7YRyBGeaflESSvzYnOT+eJr\nxL7ppLDtx9YVWbSdGF/fJHP0/jBZkRubPGcmE/Szp4M4nUjiq8QxfH5jmXivDnC9f4Z5ln5p79xc\n6f2kaXffJpt3eYatIJ5J2rrarmSFp7jX58OsEdcOsM6ndmiHZ4T1u1Y5H/OaQ5HjZ/mtImVejF9T\nCjt/Qd4XmpnS0NDQ0NDQ0NgH9MuUhoaGhoaGhsY+cE9lvtYminpNJpF9KuLQ0gXVyB67a4osGGQn\nfnbzEdMuqYMarB+AQv7em2QhlbqhnKscZBgtWqCurQtkC46XUFCzL85Zge1V0KoiIpEVpAvncaSO\n+Aq0dP84klyxi/Y11nCW2KAPWtpbyJlZ8RYlG+j/pR3hp5DJql/lmkjhfdynieKBJSNIOPnCbAFn\nlpXUQ7fPeZASfGPQp0GbIm104zPXBtJszQVk1+Eg0ozlKIXUqobJZrElGc9SYRwWlQSpjbNQ9e5m\nJAxL5V7J1vH2Ba47QCwsvsh9K+xQ43NVFIyMUl9UHpyB9n6pFnr+pJKRNN+OjNi/goR34DjyxsXT\np03bdpMMucdbfgrnLIrIQDvnk5UO/6Jph32kxhS6kNtqLPw7LOZGIqt7Hmlv85fo/0Y9mU7dS0rm\nlQWfdBa8aNrTSgZYRxo/R1eQ4DeTzK2a+b1ZcaNNbBewreLr073IbdZpslxdxUgd1jZipn6C2F7q\nRG4YGMRXsU4yqQoKuMbzdsi0e9ysX5cCfN7gJ47yhcV55pRRTDZb7TqyaFo5p6+ig7atbCJ/nL19\nxrTbY2ROVviRr6ffQEbx/rKSaRph7lvnaM+pDPH7ZhCZptFQMpEnvrWnPw4X67FNkXzLJpCILHZ8\nkO4nDatSWXOnrbSvJawU9mwljobLWGcbd37BtAsDrKeeb1PM8XY5z7THtj/YWW53i1ycMXb083v2\nUR7fsQzjl5lnnXJM0f9yZYrciiG9FvtZj9aDZHwunsXPqWPEtWOGbSO/3IFE+tcW5s2hjaBpR4y9\nnM2w43XT7qxky8OEIvN3pfHV2CgN332AbSFvjLBGVG1yvdPKmpoLcGbrtydoU1ErY/RIMRJxqpB1\no55hvytoZkpDQ0NDQ0NDYx/QL1MaGhoaGhoaGvvAPZX5blo+a9qdgb82bctpaP+iZii6KhefXwtD\nz3/eQFYYtEO5TvdBxd5fw3fnzn7OtIcboXHj36HIXLET2rfuAFksxTVkBSWfh24WEbl2H2eG5RLI\nOO31ULHeAWjMgvuhu5d2kE9WDc4nahiFrhwcg8aO3w8Fav0mmQsbAajy5bNkxLSVQF1v1u89hy4f\nqBuCGl48Qtuah4OmvetEvt0sRCKdX8F/KUFW2O1jDB9Y456X/h107u1fgXs9sIx0+AUL/n7DBt3c\n34XPztihcJ3hvTJfoppCdJlSaOXKOrIxQ0VIeCeLyeKZm0eabrEinxiTxNSBI8RRsSJPht2M0eLr\nxG9rAAnq+37i9Kk5+plP+K2KdG6luGm6FOk408jn0evIXzEX/Xd8ATloawGpvWyEInmRRmj1npNk\nLY6dxj/NhWTepKb4fK7svGnPX0ZumJe9RTvLvYy3pZUYS15C0jp0GKr/9haxt5BD6ihvR5KuuUWf\nJUomabQQyb5okMzW8nKyu2xFSNWhOIUhn0m8KvlG1ooUcjaHzx6uRXobtpEVVVqGTu3ZOG3a3UXK\n+Ib4d/ebiuzW3oa8tD6BzBUPsF53BZjvoQRZZ/ULjMmKj7guqHqPvlLJ2pEaQlZqeow5ez7KXKtJ\nIh2ny2hT7RrzukLw98Aun3dew/eRasbuXJo2faaPTM7REOvU3CLzOp/wFRN32y+wFsZcyP+dbto0\nXkgB1AMbjN2FKiTSOoPnTHmW77ZOs9YYTzLvel7nmbNpZc2aHOR5+itKxudsF2twwrn33Mz6c8zV\nGz1sa+ktpG8LDay1j68QS9+8SLvj7dw3XsrzaCpCdqq7nThv+A5x0bH9jGlfLmWtsW9wfc71wfyp\nmSkNDQ0NDQ0NjX1Av0xpaGhoaGhoaOwD91TmC26+ZdrTMajCogPIX+1RqMW1OTKs/A1kpP3pOFR/\ndRu0eu06WUiVbmSFlwPQfvetB017swmqdy0AHeq/DqW78goyRPEvKgdsiUhjKW1Nvw796PWQcSaF\n/IaMkem0myHL5mM7FLecckJFugeR546uQ8Vbn6FNb9nIuCjOIquIlfscLYZKFXlG8gHjKHJW2QyZ\nd0tN0LvlYdoTm0R22e1AFnpwlXEItyBDzKcYz7qPQ/kWTUHnLueQD6rnuH+HQAvHPchUT7VThC1a\ndWxPf8rf5t8V2TCZXUW3iK/FdmQPzwrj3jEHvX31MON+LKsU4dyAkj+1RdxcKKbdWzvItJkl+t9U\ni+w8nqEP5I/uH/MF9NPdixxgH4P2d61+zLSnt8hCCzbht8sbSK+VtczB7ULiN9TE+VolKG2yG4Fu\nD04w36c9SGHuabJF7Y1B0y5aRpIREUkv489ZK1m3/hJ+I7OAH/wW5n/2OlJl/0Hk4OkuJA3bCnGb\nMU6btstCP2cstNXr4fMTSiHZMS/bFE5JfrB6kXH/zBZ3ne1FRra1EeOus3w+oUhs0W18mW5ELjOU\nzLlNg8ziMX/ItNuu0K/hNuSS1DpzKHmQ8S+bZfxbtpT0WBG5lUKadRYRO5vz+LK4Eslncpvnw2Gl\n8ObsLr9X4SDjrzpBm2Z7lK0Y02SwHZikTe/EmdddjazRzg7iJp94M0D89h5n/RsM/61pFy2wLSDo\nQDKNKRn0tiTxOLOAtLfRT4w/HUJSfEc5J3e+hHHvfoO539bN9WN+1unYVebjJ6wn9/Rn9hB+s8yw\n5hnlrEGhi6zh9weJsZI093WcVbaOKGfUdhlI8AsZzvUzDrF2nnEoz8Rp4qLfylq+3sYz7m6gmSkN\nDQ0NDQ0NjX1Av0xpaGhoaGhoaOwD91Tm8w9xnlvVKXb0574OjbnjhLpbSnzetItzZM4d2oW6XblE\nZsla/SumHYuyK393moycjcc528nYQIIrMqAY3/HxW4eroCQLKpDXRERs12hrtQHN3JBAwpx1Upx0\nWcnuWvZBv0acZMTMnYM27UpBxSYPQlFawhSVbJiAfvU8CBXdoZw3NCXQmPmCx60U5TtAX1KzyAEX\nCvBx4wy0qssBHRxY4Z6WLDJo0TIxsRQkTMsj9KW8iCytyRWFkn2McfAb+Nh5A9nxVhsFCUVEbFVk\nGZV68Zn/5CXTfmT3KdOeEGLwviratzxHwdZAC7+3UopUMX4ZCW/XiyzYtY7kN9cE/b10AWrfE/+A\nleTuEj1epKGKMbJqzhYgT3rWkLlyguMio8iCgYP4tmJMkRWWkL5nMsi8jUuMtS9ITF1ZorBf4hrj\n0lDB7+6mmH8jDqQXEZHkIJJLUqlZWx8jNkaPIj89oATiWvI/mPY3nZwjlpOPm3aZhfallLVjeEwp\nyHqUz8fqmL/dA8i2WyH8nC9UHGPcN4fJKMyOIn/FlePSst3KtoRp5t2NFtaxmgna7K4ky3jqJrHc\nWE4czCg7DrLbSMVFRz/DPW3Ia5lF5kG0jjVXRKQop2Qy+5HVFjKsBW0F9Lm1BXnOLcj8beusld+r\no1Cy8zQyVHccGak0wboWfVhpU4Rs1MkYbbtvXC2o+4TkC5VvIrfdtjHeJdvEl3yaZ9P2WdbFCRdr\ncHsa7mT9Ufy5uvG8ab9UQqbpwbPIufF6itS+/iRj/chNpXDuBca3vIMxGihRirmKSO9zrDWvV1P8\n2TnMXGg4hJS4cRsfph84Z9rTl/lubY51fkb5uViI9cV6kHGsm2E+zjnJzE7UspY7onvj8P2gmSkN\nDQ0NDQ0NjX1Av0xpaGhoaGhoaOwD91Tm2y6jmFxwmYyW5V4kGpuHbIpABZKJNcOO/plTSjbANLKd\nfRU6eS5Eto2nHuoycwMqNlrFu2TpGvT/b7RfMe34CtKDbZJ7ioj0CdmGoy3QrAXnoDunbcrnVmjG\n+5YUuaYDuaG7lMyK2UYkzE0/lLb3JXjMTA1jV7QDpTni4zzCIuUsw3zhB4VQvZ+NIN9ahDPYykdD\nph2MEGq1hVDGhhMJNmuBGl4r5bt1UfVMRD5/LYV0eMSK9Dlkob92y03TbvCSwXdgBHpeRGQmh8+7\nE5wRKCXoIZNJ+pAshpIecSJ7+K1B0x6YQ7a0LEJbNyiFDl0zUPJ/0YzE27eonPvopg1XAozXb0n+\nsDOhyNl2JMn7bYzT2V5Feo0i5+VInpHOMubX61MUQOw8jAx3cpfCvItupJ7rKyHTfsSFVCOltOEH\nvhOm7byJBGur3psxtOSnIGTLLWTClc9wJll5gNjYHKJw7lIv8lY6jPxU8jJxfqkGP9TZyQByORkj\nyw38FlPODtuYpWDvrFMZvDxh4Swamz1NGywHmV++qpBpXx9Vzq+MMK+7l/h8Yh0Z1HOU+PUt4+NH\nbYzDC/fRx+q/IdPs9gpr4Fgj97E4iAnnglIcVUS8T/LbZQOK7Cw8Q64OMo/srYzpY7vc69ulyNdF\nSu3b2Wrk64RSwLRylvbtKGf5OSxkmvUXk8m8vYHMmU/EPcypwjJktfow69HsBGvkXAtz+WCItSxU\nj7zWvEqcVpUxp85c5LeKlIKnzYP408gypulGtqIUTDDPppJkgrqWlLksIsldioo+o2zVmK6iHdHI\ny6a9XseWjMrnlOLazfQzpxTnrPTi/5dHkN1LF/GPqwy7O0Uw3Cghhr0p1u+7gWamNDQ0NDQ0NDT2\nAf0ypaGhoaGhoaGxD9xTmS8cCJr28Ba0YSCFnDU6QwZFk/KqtxZEDnDc4Ly7xGGkQHs3FKBtCgrw\nuAOaeDEFRXloE0oz7EOqyWahep+/BQX8hUay/EREzsRod8X4KdPOPII0eJ9S3LB3EGo1XEOWzeAN\nqOKRXaUgmlIErekFMjcmal8w7QNWis+tbCBJdCaROW46oGLzhS+FoIBv9dGG9qlTpr3UjdyZHqJt\n27vQzUuznK/VaCDnFBQiH5TWID1s1SJlyu2QadYcQ15s2EUqnthEBj7y1KBpz26TzSIicvACBUCn\nXATexkkkSedfkIVWk2NMq8Y4m+18nCqU5bvcx5dC5lrbggIv95KddNwJVT29joQR9iLPtJcyD/IJ\nI42k44pS0DG6S5sMA/uIA39OrCNZrzXy3XpFPimoJ5Ydg9i+h6HkgwPMu6qzjNGNCHHhjrE+VB1C\n8kiucr2IyNIx5VytW6TzpcNktCWTZPx964AiQw8hmSwqEm64F/k4EMdv9U4ywHZ2ld+y8XnhwmHT\nzriJT18jkmK+UNZJPI5tKGcLKmdLJofxTUMvc3llA+k8EmW92qpm3MoG8MeXrUg44X4+L80gL80d\nQxK31CCjPLyEL2NV/FY2zHwXEbFHgqa9mGRObTcjz9i9bANJTXGvhSy/Eerh88/dUM7mnGFdcMyy\nnaKxkjX32iSSX6WSmTtVzxpnpOhbPpFWsvbSjfhzeBW/laZpXy6DdBY/RAzWhpB/pyeUrNibxHJf\nBetr+GmksNB38HOuScnqHWT+FjUz57IhPt8+uDcLvqTwuGn7b7JeDj9Mce3KG2RO73jZvuP/BOtU\njBrgUjHEs/hKJeNSUss6WrmF/6udbNmJ+/Bh5Ri+taWUNOC7gGamNDQ0NDQ0NDT2Af0ypaGhoaGh\noaGxD9xTmS9+gTPorB1KRkAaWj1tITttvJIMmGdvkonxlptd9rNhZKKyN6A6O0aUAl0PIT0U9iFV\njI9DveeayOyZTCPJPBiEunyxfm9WwuEXFNr8k1Cf6+egEyONSImLDyLXTE9/1rQbLZw95n80aNpV\nC5z/tnIAGWO4gCJjxa6QaReWcf2qUtDM40RSzRfchYyLJcfZXtFlxj1rIFn63PR9Q8kW6/WQbZGs\nR1Kx3IJijihykeUNKOz6AFkhcht5ovwBwnrBSpZQ/CbUc3iejBwRkWwBMdWQgK6PXEAOjDuV3xbo\ncNcsMobXDW39WTcS44WbiqzwEHT7D2PEVOUt4r2smLhu2KKt0Y6fzr9/dryMU6fBeJ9NI5/YFZp8\nIKhkqlVwjXUc+TOt+Nx6kPkl6aBpJi8hwyy5od6v1rNWRM4jKfofZh0omUKScW/uLdrZmkD2XT9A\nXM06yNq7MqlkJKYp4lhdh+Rbo2QzbgYo1Lm0TiwtVhMjqQSywuEfIM+4KljjPMo1g3NIlfnCwjBS\ncGMFUqY1zTq4kfknpr0y/jXTDoSQ7EszFEI8miZTa8yL/WwH476+wtaKWT9yTDjJtozAOG0YrOOc\n0NAiEvrnyvdK8FcHeVYUKGcHZruJtQPnmb/XW8javbSChPOUsjbdKsD3ZS7mZq5MySScIe6MQ/hv\n+gzrWqFS/NSaU1IE84gS5ezaER8S7n2LyHPeh5H/jOdZU0obmJurSkZmq53+zxez7SLbzJpVd4bC\nlsVR5sHEAv7ZjVPYc0yJkYogkv3R0b3jslXCmr+U4Xlf/T3m80Q1z3JR1sKDw6y7Fzppt6eAdteE\niYuBjFLUuwT5L+xmPQoYQb4bIQ7PDylFUe8CmpnS0NDQ0NDQ0NgH9MuUhoaGhoaGhsY+oF+mNDQ0\nNDQ0NDT2gXu7Z6qTAzWjYUWzTv3QtF2H0ISb59g3s36QvUfZACUKjg6hoScCaK6zBrrx5XLSdI1p\n9p94ZtHBvRHKKlw4STuDHejMPqUKrojIeIDyBu432EPUZUNrz+yyb+TCBHtr0m50+kwv+w7SY+z9\nmU6id3dZ6OeDUfaNFBRjL11gz9TlLlzr9e1tdz4w3oymfeIS+22utzJe7jCHBz9XyLifcKKZXwlQ\nFf9AKVp8w6fYAxD/Ie/8SbazSKng15l2fDH1NpV0V23shdksRMdfc6qHkorEI+wzedzH3p3UKPvZ\nHq9RqjffQuufLKatpQHi979Y+b3yw+yxiZ2ncndG6NBSJfviNtaIX59SlTkZ/GCHb94toqvsqztn\nKFX4lfH2utnv4rjyoGlvVrMHyO5gP9zkMicEVL7NfJ/8Fnsryr/A3prGt5gfKytKCYzDxHWhh308\nWw8qeyAm9o5LwSprRF+c/qxss3+q7gH2K00v47dZG2U5uibZW1HqZq/MUdvDpv3mG9zH91muv93K\nHrPOadaHqRblAPCIsukmTwh7lVMbhDbPTrPnb+PUN037yJdZHwJV+HKpjDFNZJWDzYVYsbeTPp59\njvhobKLkw+UT7FPrW+aa2CIp8/HsEdOOTO4tF1FToxwQv8w82r3EHNkeZu4cqiDF/lodc8ei7GVt\nsDEuO7WsO4k19gaFlAPvY0qpEssRDt61jrIOZBLEVj6RHWd9ta2GTLusHT/svop/wscYI89txsji\npW+LWcbLeZhnRdkA89TtY97EG+ib72vMwVQz15/YYl2/5iWutzaUMiUiEnfxjIhXMP+dSfa6dRXg\nq1cKiIfiDvywOEyf+w7g560E/Xm4kD1ThVn21V0epm8zXTxDa6rZb+Uq+WBlaDQzpaGhoaGhoaGx\nD+iXKQ0NDQ0NDQ2NfeCeynxZRUo4dJAqtwtKFe/Ot6F+13ugA0eKFOo9QWr5GwrlXAmjJ4sPQhvL\nKjRedJy0b+M3sbfJ7pf6K7RhdYEU6/o65AYREVuO+3rKlOrrhch8r9gumvbvKIeInrErFHqK36je\nVg4pTXD47rUO0uY7h0kDDdq4PvoU9GvdApW7NweRuvKF+jko1pF+UnSNV5F5SnugSQufh56d3ETm\n6KvEB5kI1G7mu1DVt0qJg+PVlIV4/QIS3DNHoOozltdM+81C5NGJDuSlPgPfiYisjJF++zxqkzzo\ngD6+OKxU0+1G5uw/iNy49TpBaAmQ0hyZQNobChArB69yz3PzUO+2Dqh99xTSyKE3mQfyS5I3uJVq\n7TmlgnBEqcqeLGUsWmug9Psrueb5ImyfC7m8dZIq0+Ej+GH4LL6qWfmSae/UIEkU2pk3DYpctqZU\n335kY28F9LUmylusx/lOuYd5MTHI8mcrw/+Ft0KmvfuAIpnYKGfyzhj+f7wd3966jq8K+v4f087U\nfov7PM/9Ew5OP8gXDuVI7z9bhly6HiE2y35I+0dLOPzZWc84Wi1I4dW7zM31WrZfpGbYKnGljcPG\nf0ep+B++zGkM6634ZXRFKW1QwXpiGMwJEZEKC1Ki308q/nyWdXoih/TmUPpwOI7/JkroQ3lz0LQT\nO8g/B49QUmbhFdbN1hLlkPNFJK+BOGu9vWzv4en5QhkqqWxHWGtHc6y1johShmaQL0SrGS+bk20w\nngXmTuGUUjHdymHe0xVc0z+OnFfRynaHynracHM2aNqpeeUQ6tq9pRGeXWL7ytk5/lZwjGfc0nV+\n+0Qv5S1Ci6xNTx9UKrof4wDslf/IcydTp8j/PArEYfCszKRYjxe8XNSdJl7uBpqZ0tDQ0NDQ0NDY\nB/TLlIaGhoaGhobGPnBPZb4qhZY1lENNg+VkREyQiCUlI2dM27l6v2lv+T5v2o2N3+f6eeSDK2de\n5v61HzPthja6XHAjZNrTJUhP/iSVX50OJJxhG7KNiEhdHRT9dCnUb0qpiP3ZABWI58ag3G1W5K2q\nFDLEeQ9U/NEHkD9bJqGia6uh1ocVqtwVJDOuzg7N3udnfPOFERsZFnZFblkrVqr1zkCl2kuVQ3+n\noXnnu6DJQ5NQvq056OyK1aBp//VLHGzd1vRrpl0oUPJvO6BnS6vJIrS8Af2frd5bZbm3D3803UZW\nspU+a9plQSUDc5X+p6aRY8siSBIb7yClXHJwuGfWgv9CB5Ah/C763OEmnpatisTyaa7JJzIB5uPm\nEhk24mNc27c+ZdrDbsZ1bZd+roVpX1mYPlywEY8l9cTIQisS08Vh7lltRxZ0byLZR33IBy0TVCue\nqKX9IiKpGHF1hTCU2E1ita8NP+eSUP3lipQyOKkcAF1LVfYCJ1L7YoqMXeccUtdG9iXTNsJILPOP\n0P/GIaVxeUJSkL/jZ8iQaihjXYtmkEUqGpUstEmqlavxPjhPZf8DR1grh9a45gk/mYy3ppG8agrw\nTWQGX9avK9JsGdWsS1r2bqdYXldOy2hn3I0v0wfn51nXS0c5GSEWZotATQtzM5pl3lWkyOS8OEVF\nfutB5eDtRea7rZi1zLAjax+eZ6zzifA1npuu48Rm27Yy7+7DD1WT+GrxOrLYdhOS18UKnq1PX+Sh\nW/Qg8b70Ar9bej/bDq5GOXg4ss79p6z486CBP3YXlH0TIjJaz29YkvzNqWQtGkeIyaVLSIzFBhLe\nNaVIum2DbQeu1qBpl63TjvVFno8lCeLT/zFixDvN+M4vfrDXI81MaWhoaGhoaGjsA/plSkNDQ0ND\nQ0NjH7inMp/fR+ZdXxhJ5/tpJDz721CUCx4OwgxUkJWw1P1V0469hgyXzZENcKiXooKJSX7X3Qa9\nF90ii84IKwXkypDXVleh6odcUPUiIodfgyqd64XibQpQrPCdYujktjYoUW+UDArZRfb5kh2q9Nwu\nGWeWSeTCiYeg61eST5n2gW+8YtqJfwF1vfLV/Bft7PMxFmcTyFBhF1JNzSay60gMaS/1MSjcq1fw\n2cdLkDxG7WRFlbmJj0MeMok2Qki8ryrZeQEPVG3CrWSRVSD9NLURZyIisRfxjbMUmWFi/j+ZtjX4\nCL89Cd1cM8qBmN+vh7YuLyOmPn6a/ow9jm9ym8gW1gIkhrVK4vr4LBlQy5mg/DRQ0kjMbjRQkNJx\nHT9bKikoW5JT5Cwl6aXxIZaU6N8iX3szZN7koshrh4rg6h9Kk0n1ao75a9tmrUjtIlUUxqgoGl1B\nChARiVbhh/VLzJ2HfgVpKBzj4OLKIiSACS+SQVmC7J4qpZjkLUVuvN3BGMV68XPPH+PP6MP0oWxF\nyZ7y5b9o57k1xnr3ONsAnC/TTp8iF69tkS210cU6O21BzvM4kWAqzzBn64rJ+Du7w8Hx5RVcM7bD\nb7k6ub4iw3gag0HTLviSkrEqIt3XyFR78Xm+0+FgTGf7kAJtMdaRQBQJPjqFXxNu1sSknbbmtp42\n7WovbfX5WKMnbij9UZ6go/a920DyhcJZ5l11MTLsbBMTbyeFn8f7Ga9yg/WyuJDnVecyc8J98LRp\nO4TnycPdzJXBVdbLxhrk0s3LrHFHlKzLF4UM187U3qy49KvM214vEtvFLp4L9Ul+u3aWbSqJA/g2\nF2Nu7ozgCI8y94c64YusYbJKq3ZYm7YXWPtntmhbR5gtAXcDzUxpaGhoaGhoaOwD+mVKQ0NDQ0ND\nQ2MfuKcy38wGElvqYYp99cxAucZOQJOnlmjelpIBUL8K7Rfxk9GTqeKagnFo+I0uPh/LIEMdq0aG\ncp9FCkzWQsNnGn/FtI8kX9zTn4lm6MsepTjn1gzSTYWVaqBzC2Q0VVrIoLih/N72dejahAeK2hsn\nY2h3Aor2cB3Xh3ehWWefQ4bKze096yof8FUjz2QnlcKAOfq4VIu017OJn0ZXoViLihn3IQtn4vUd\nUKTW7xMH47/AeNblkIV67EifsRrodtcZfLTShkSUvqxkrInIaz1Q+g8lkEMKG5APVgeJu6JRpLqR\nJ5BzWkegjHeVM/Xe/ASUdEWW2CxsRObx2jhfMBdFVlh8QDmbL6aeKaikvu4T1i8/adr2o1D33oMU\nU4zewLepHvzZpIyR5WUkppEy/JaJUFQx7sIni1vfNe2zgmzbuKYU2kwwXrMR7vnGwVumXXmbOSEi\nss02VyIAACAASURBVLqChP8LjxKrg28RP9sdFDc8XkTMlPmVbKNt+pn04EP3YaSektNkgjpzSEmL\n7UiPI0n6/LjBfB9Lcf98odKuxO8AcbRZicwdv858abcjBV12M+6eLHHnr6SdW376lbjEWKUaWK+y\nSqHU1RD97dqgbVt9fPdwPdlo0Yt75ZWvB7lX+yn8v7CEbPOxbxFfmzGeJzv9SIYzo4xFg5M1KzLC\nep06RRHZ4g2Kzs5fCpr27mFkNPsiz7T4pZ/OuZn1HUo24xHW+8XbPEObS8ksb0gg2Vc7WJvedrI2\n9TcwX7aHyagVq7KOqmeZrhM7nijzaTeNb5JRfqsgw7qeyLG2iIh4WvnOO63IamWEgKStZFu/c4As\n0YYMvx0uZlyK3MiFmSn81mgl9hY2ad9sC3HYGSde7BH4pfmavVmI7wfNTGloaGhoaGho7AP6ZUpD\nQ0NDQ0NDYx+4pzKf1QudvHkO6j4Yga6d+hS0X18VFN2KVaHiXiC7aajmLdM+oBQKu56BAvTZuE//\nJe4faqdAZmsFRRW3rdDV9hYkstktMqxERBqVNKbdCuhXmxUaOBFBuqq2QDNGFqBBTzVAOW+2M0bd\nQ/RzvB/q21+OxHDNqZzxN4v0ZCSh5XceYCzyhdlDZJWU1iH/FF8m6ye3BGU86Ue2M1rpb3AWWcio\nwx+vzDMOzf1kGDUUEAcp92nTvlbH+Bg5ivblHiTOUtfJTgp7kGNERD4zSvZYtJX+7O7gs1CcrKeW\nAP4uuAllfNkzYtqeTcaiPUK7h8qh2KNK0VVPkjY0NRBbfjv+K+1AOs0nJk8oEl6I4pS1dqRU8ZOt\n1TqDRDPlJQtn0wYNX51Cdp7sR8JsziC9HH2NsbuoyPolx5CSwqvEmj9MdmxuGYl0S/ZmxbXf5vfe\nqUUOqfUTAw4r0kB8jra+U8rcLPEjbwSHkHktSdrRK0iE84WsL/MNfLdOOfzz8goZSavje8+IzAeG\nPcg5tQWsX81Z+rUjZB+vFRODnSHuY7dSSHN2lTm1egAfHwiQCdcwz/mG3jJu1HM/YzW1SX/7vMRc\nZod5+px376GTPeMU6q3ZZl24sEU/l46S2Tc+w/rd9ObnTDvXxdw0brI+WpUCsZVvsl5Pl5DV62tk\nbd1eId5biolTXy1ZvfnEUilrh2Mcf1YUI8fv1LI2NY6zpl7ZZow77ErG8iBrbaqKe7o68M/aODJX\n4TFiPDGAP6NOZcuCIJsfqVbOmB1gLoqILLWSqbe9RFy5m5gjsWv4J/oUmbY3L3HG5TEfsnuBkjA4\ns8taULKNXVCAb7uVItjXa5RtDYvcqHBub/b++0EzUxoaGhoaGhoa+4B+mdLQ0NDQ0NDQ2Afuqczn\n2YBCLD4KtbiunO1lLUAa2bkKDe9pnTfttQw0uXc9aNrnC5Ah5BGynrxKsb2LB3l/PJpGbppNQjG6\n26B0d+NkSVjte7M1/A8phQgTSAnxje+ZdkEbfZtXilIev0mmxNQ7ZB9U9pNxcqMdKnLXxW8bP0CS\nLGul3aVOMkucDrIhbnugsfMFZ4jCi1OXyJBMPkD7o6fJKOw+hl9305zt5NnirK4t5QzBXC9S6cAZ\npLayq9D8rUeRUbwufHnZAeVtH4d6dwaIidrEXnll8yQ0dnmBIkuMKkXpjpEl87UN6P2iCuV8qR8i\npay0QzHPjyPN9kVoxzeXiMdeC9entk7Rn6t83qtIwrJXdd4X1uLQ9cf8xFe4j/5kskq2rJW4bjOI\n5duL+Gew9appHxoNck8n8u9VpZ6s5wkkTHuMWF54Bbml/HF8E2tizpVe2FswcdOjnL22hW21EmO7\nIaUAqCLnn1IKGpZUcs2UUogy1YqsPPUaa5PcT1y1oSpJapy1LCHIHN1O5Xy6PKEqzLrUVsLvbhV+\n3LQdWbLWlsaQNhyBkGmX15HldWqCOfuGIqMM1eInx1aQz+O9pl2rnBXXX8J4ZodZE643Itk8dXbv\neYVROWnas06yP9snKS5bbEcWOrRKHA19ggLPuW/zfFhXikVaK/i8bg2/bjUxrxtOM38ty8jOt0tp\n97Iid/+65A/uHfqWqGbLSv0Y65+RYT2e9AZN2xpgq8j6Mutx6RGeD54ZpED3uJLNVoVvC2zM/Zki\nnktFbrJmJ9vIaPed4XpHkIxgERGbkhVcdhIJcLuQOJyo4Zoja7ymzFUj226n2P4wVEH/2yrJFtxR\nziMMTOLzWH3QtJsqyOo/M8L6EDyoHP53F9DMlIaGhoaGhobGPqBfpjQ0NDQ0NDQ09oF7KvMVx8ka\niU2RWVBZR/E9iXHNpSIkA7ePbBtrpVLQsAHqrjtLhsI5EsBkfQMqvdMFNbiwyPXZReSy1rrPmrZn\nBvrQdRjKVEQkNgP1PT0PtVhTS/aBnOa3Dx+gzznl/KiGZqjlv0pAOf7KFbJj3j7J9VVtnMFXaueM\ntNp3cOdsPdJDxPXBshLuBnVK9uPD1RRbDA0g4fyght9dWkbzSNp5h7cU4O+5AqSz9j/nt6YegjIe\n9kAZ25JIgRvfUs5UOsGYXGyAIvdtQkm/qJzjKCLimGW8tp1Q+u1tZH9dPIsmVZAgFtrDxKn9OFS1\nEaU/t5to0xth5AB7F+14e47M1HY/sVm3i5QQ9TJe+UT1G0hpjh6khDRNkooequrdVtTGTJyxK+tB\nLhu6wdyJtiIxlC8zRok0sX9/lrk5cJ55XfQYc6gwjcRk+woSsfuJ5/f0Z7jyCdN+7BZyxWQbPmyv\npq2vhpF0dpKMRf8F2jHRReyduMkYnW/h7MhH4mSV7dTRn400ksyBda5JB9hSkC84Q8wLqxc5x9JM\nJlRSGNOa+8hyus+H5PX6Gn4dKkRTDs7Q5q3Cb5u226B46SEv2YKJUqSTc1Os3S0B1orKAeTRuKiF\naUWWlT4E3LQvxjIt2VeQZOaU4rxrk/impwV5arOCc193zuL70SLiw7fFfYZSyN0bR5GBq0bOm3bH\n4N4zBfOFbJjxjlhZj1JKQc5DbubRRJqtCfXXkJR3SpDypypYj2sbeC7dULJxo2usqQE3/vEp51i6\nj/K8WnFwH6sb6X/6nb3FL62NjLGlgfbVt/Bc8G3z/aZDyhrxGvOxpJwC364p5tqEnTYdTDFPb9Ty\njA5m2BawEuH941g18vS6n+vvBpqZ0tDQ0NDQ0NDYB/TLlIaGhoaGhobGPnBPZb6baYV+XoDuLauG\nQo7VkxnmKYCeH38LirIygGTySCnXzE5z/7YlaL+aXbp5c41ijSVuRUashLocNLh/JAitePAy9LyI\nyEIdMkadCwkksUU2TfGjyIehm9DMjo9DJz75JrTsryrnWGUsULreTc4nypUhexVtIv9dOQXtWzX7\nqGkf/9s/pdEkQ+wLq6tQz7fsyGcDfsbBMwONn52Cuk+Vkg2znSDzrj8DrTpddsm0czPQ/C1tnKM1\n/CaST3UzYzIXJxOkSpF4Ml5ki+ZBMs1ERAobnjLt507is+QZpJ3GTooYngxTYDObCJn2uQHkv5IT\ntKk9yu+NZJGRCmehpJ+Yftq0jZNKZmYG2zUSpNEcR7ZvRBuQvKY9SCkjNQ+ZdjyBrN24CE1u1BDL\n1stQ+rVbZFuVtBL76x6khHQJmVeDF5E2E5XMg7IA4+i/zFgYvcR7xZ9zhqaISMnDxNVUFXHlcCGd\nb1uRLpJ1yK3Hs6wR0SHk7KYJsgINq3LO4zLzdKQCSbY6ppwRmXuT6+3cc+GGks6YJ2y1sq5Nl5PJ\n603i45UYWa7xada41HnWzXA1bevqQC6fXWPd67zJ/Ji0MM4TSrHIEgv+7nEh66zZWfeCJ8lotr61\nV+YbV7KwvI8r53dGkCpvWPnt3jjr/XyWGEnH8HHlBpJktJZ2ZFLM3+UJ5kHNCSXj+iKxdaNGKajp\n5NmVTwzfx1roPI+0Xf0sfn7tBdZFTx2SZKwMP0SD+K1klS0IyR3ml62FZ1xlP/dZG0XC9OTIwpQh\nnuOVDXx3TDnvzh9kfEVELEs8a2Pf4Lnm6mce2Q2k4ekd7rX5cbaOhMuYa/EJfF4jSiHrKHO5eIj1\n36c8yheLyRa9ussc9+RY7+8GmpnS0NDQ0NDQ0NgH9MuUhoaGhoaGhsY+cE9lvnYH3NpmDz+9MQNV\nbLUqWSYWpSjmBpT5egP05sAKVKRNOcsvYkNKWS0ns6TzChLOQieSQVo5d6++hHumL5B5NakUKBMR\nydmhHytLoTtXXkcOqVSKL1Z0XDbtxZehk1+po/jgRojfPvIF7vnIJNJjQRO0eeQSUtfcbcbFu0iG\n3XfLoIC/KPnBkvV10z5ZCQW+pPjyUhHtLC1mTFa3oN6b2vHxJQuS5dJJiqV6kqSOVa+RFdbzi8hL\nVW4o2VvjSGfVt4OmbQTJNpk/QkFCEZHxBeSpwy9CDYdqsAM5qHH7cfq2sozkWWOlrTtRfDnkQsJq\n2sav7nYo6dFW4qNji2y0xS2yar54El/mE1ObZJt1PYEk15yj3dExJNzAriJrFzHeu8fIdPKMMnec\nQ8zr4LZSwNLAJ+1rjN3FAHHkdpO1s7tLdpZHkfXHHtib5WhbYC5UnkI2yjhZF25PE3vdO/SnsYQ1\n4mUf/95sqEICi1loR9elF007vYH0MNNFllDkDP20+4gLT//erNJ8oCnM2XTjq7Rnx8d8eeAYks/Z\nENJGpRc5L54mrics3DN9i0y41Trm/lYxc7AzQ0ZsSRm/O/0isVVejI+HnmceFNvJ3hIReaSNuRq9\nThxttTGPluqRf9xNpKBWjiFnbqR4hmysMo+qW7mn/wzxPtLFGr0xyZqVTSuxXKzMdx+SWj7x6QTj\n9EoAOXPoPDHf4zlt2p6IEtcNrKnPC7L2QjXrV9ZHPz1RfD72Ds+3ul3ORyxt4blZWoHsmNhQMraV\nLLp5G2uLiEim4lXaV4/sHguw1ha6eK5ZFvm9WIa2JibYIlC0jh8izUo73kaqTfWzxk/dUopOh5Tz\n+KLM96aiD3ZupmamNDQ0NDQ0NDT2Af0ypaGhoaGhoaGxD9xTmc+xTSZHMqKcQ9YIre5TCnzdrIBy\nLSyDTvTU3jBtu4HE4HoTOt/lgypO3eBzo47in84AlHa2mHOF1suhhptXFUmxXKkEKiJHlxUaNAxt\neOWZE6a9NIsUYdnivpb7GPrSTa6xKee5zVxWzhKqhupsX+QdeMABdX1Qocd9MWQFb4S25QuxLLJo\nyID2bi/kHK7lceSDaQvyT6KQrJfVfiROyzj3aW1AUtlZhD7PdCMVb01BFy/PQH9bcoztd7pfMO0T\na8h08Qy/KyJSV4QcshRh7NIbxGAqBh28MAftH62Eqq7pgN7ejuAPI0NWXKKEMTozh/8eNZgf0gjF\nbG8gzi5sE7NPCjT3fnEiQIxYl4j5ZAFj3+VDAsg5uab2NrT6VxeQy44UI3OtNyK1ewfIyMr66dtL\nxdyn6xzZPIHzUPvfaDln2rYd/PHPjioZRiJy5QLZWskrzKn+KjKL6rz49kIXfVu/9nnTfqiZLEz3\nBnLj6haSREFWyYxTzp6rjSA9jdpoa8s0UvVQJ1JVvhASZJ6YA398Sclm++oYcdoVV7IaW5GUPzVA\nFtnbsc+YdqCM2A9fZ6409zOHYjeZ+7NNxLu3kf4WJlnfwgYyzcer2NIgInLFwTxyqOcjplgL+uYY\n09vTjHurC7mxuZiYHVlAgk5naOuwvZ/fSjI3d9rxX6yKNrTOEKeR1AeThe4WrxWw5cE1Q1a79xGy\nCq3DyK1R5an+UpS2GmvEfkMFMp/LGjTt0BZ97i6hz6v1tMF3lefgjpIFO+wlFpwppL3cBBKxiMjq\nFs/gUDe/sbNObNQoGeub1hCfn+d5H/CSnbrWw/PIVsSa1WtlXg+P0LftWmT6OgfvHJk1xjTpJJ7v\nBpqZ0tDQ0NDQ0NDYB/TLlIaGhoaGhobGPnBPZb6ScmjZ6CYZCjkly2/1MFJMGwy1rC5Dp9pWkQbS\ncc6bWi9WzjBT3hNLapAJXlLO/msYhg48VIHEMvs6tN/c0xQrOy57i7JZxqD0b5fR7voY1zW6+Xy2\njKJhu3Gyimau0O5gAukmU0w7AhYksGuKDFNjg8b2jkMBX2kjM6y6gqJk+UKq+LppT4xAGbfcRi6q\nEaSEqUrGoegwdHPBItSwZ7zPtIv99P3WJL/VrFDp19NkRXV3QT3vDj1r2nWDjM9EGvr/oGdvIbnB\nDMUNN5vpwzNZ5MCJJL5JzCO3HbfeUq6h+KerDPk2E6IP0Qra8UAp7aixIWVnlbPTfP3Q2eMTnFn1\npOQPNXGkN0cRY++a7DHt6c+Q0eP6KoVUd7qYqE/OM14JL/N0YoZrnohCt79ci//LbPh/ppaMrPkl\nZNSgixjvUaShsXkkOBGRIju+ytXTn+1FRT6oJTbuG1UkA6VYcO4HzLWrHcz3ilJkxSb/a6a9tMF6\nMTcZNO0WD9mvzgDL7sERxj1fyAaIqcopfPB8L0UR20qQ0RNZxrRhjc//ooHrD+ROm/bQJOuVM8Da\n3TrP2DoeIg6Wa5lPWyHkKNc44zbrRyp9Y2hvceSC++lPdIJ7Od2sL6enkQJ7SpGe1jeJEeVYR4nz\nOJEe9bzHanxzoZY42LXyecMyWxbWsmQwbmfzX4BVRGTqddbX9m5kqHoH8fiKhedafw9rR8U8Mtf0\nMnOwpopxDA8p/qxjrniUcfENcn1hA+tXiZcx8i7iW4+FbPIXlDM9RUQ+18qYvTpHAeejq6yXOxkk\nv50NtnB0nsSfA3Ha7VaKCNdsEj9/9qm3Tbv6MmuNr5Sx29jm2VFSw3x/q1UJkruAZqY0NDQ0NDQ0\nNPYB/TKloaGhoaGhobEP3FOZ7/ur0GblbjL4tizs/D8Uh3oPlZCVUnPza6Zdskghrm0nWUIRJ5Tm\ngwUKba+c8+MegzIuCfK7S+9QTK6uGgHFNwQFeNWJtCEismZBzqvegn6sOsR9jUsh06Z1IkVWKOFw\nDGrx/2fvvaMsTc77vLc63b6dc87d0z09PTnuzmyYxQYsMggCEEiIFElBki3RFK1zJFk6tE0fW5Zl\nJYuWSMoKlkkRBECAIAhgAS42zIbZ2Zmd2Yk9PT2dc875dvj8Rze+pxomdxe8vbOU8XvOwcG7d27f\nW+Gt+uq+v3qrZj96gfp0k1mTdRF5q6aaNfCNVOpphYR3S7xMop4t7z17RMIYWRUnIi2hfXk/YehI\nmZc9d5z+Lr77idDOiXB/X4mXJfTSqnfvWhrSVn6mJ6EWIYtleHf/XUslLP5oM+3W1u1lAuXtlvmq\n1/iOvDX6rzcT2eNYDOm07QgHES4HhP1nlskiq+qjn4IVyrqSej20H4pwx99qFKmivwqJJesGMnWp\ne3/u/5pfuxTaN24zpo7vQ4rZf4d69niyeKoXnu/bICOv5DLh/S/UU5/X55DIzvZS57EDZGRNjTLG\nH4nyeu81DlucOkA2Xrp3f5uZ2ewjtNn6ZbYU2BTybCSRcbcV4f01K8gK33+SrL3mOfx564Z3mO8k\nh/muRJE9olXIove2ngjt/bPIUw0Vu+XJvSAjHZljf7OXddvNtob2J/Drglnm2d5lxm9FFOltNo3x\n+EwdEupkNnPi1BxjueAo0uGRC8xFhRlkCL6YSfufzyDrdv6sd5eomc16d/g1F+AvveMcSHk6l/os\nJdKX7Y554fgsj7v+Enzw7Q3Gfmky2Zt198+GdnY/37uQQT27hmpC+8AKcv9e8jfPU8+L3uv9mbT9\nF4rIbE5a547P6TnmspRayn3zJvJ95BHm5kzjPs2FErLwVge8e1AT8KPUgAtC+3OZd2cdn5Nxmex7\nM7O1LsbLk7XMZwsHefbPLPF8KY4yb9+Zp29XyvDJrEG2CKzEGO+PtyN/LjzFd638B57GNQXMKane\nNqAvzr5pPw6KTAkhhBBCxIEWU0IIIYQQcfBAZb7mRkLgC4WEgcvnyQJIbiCMlz9BWG6pHFklM41Q\n7GwSmT4za6wNl7yDKptm2bm/caI3tJe9EOhWI6HBrmRC3ZWblLlxfvfdS3lnkQAiL5JZkLRIWDYl\nA4mxfoXv/k4+oe+mcjKXFu5yJ9uhlG9T1nyyhLZykFVKx/ne3GUOn5tLpWy5Q0iQe8XUGGH15H4k\nj+I85J+VBEK1n3ibMOzUPFl4xdUckvfifl4vPM0hcZvXkCknMvCVkg2knYIaXm9aRaZZidEXUw67\nfrxmV31yHyGMX9aKDJO8ji/M55EVmZuM9LSQjGxXUko5Ni/iyyVN+MFWjLBy0gRlLTjGd/VfR3qJ\nVjNWlqfJmNpLpiuo87kU/GV2AKluKQs5ZHaMzNSEaiSD+jykgXs3yQxq9M4XLZ2kHxaLkA+WvoMU\nmBjFl1+LUYaZBEL7x24x9vtSKb+Z2cRveuO21JOYDzPlvXSXjKGCXA4SbKn/Bt/RR3bm7Vnmo+KT\n50O7d4j+r7jPHLQyS0bbo+3ISqOfQD742lV85Kdtb1hcwr820pBIcqO0Y+Zt+ma8grIlFjO3utc9\n+bIb2Wbscfom9x5js7sFn7U71Cuhg3698jiye+Lv1YT2/D7KfPz47kMe3yqg/yY6GS+xDKSarTS2\nacxsMCc2ZiEF32vh4NymHuTe/ETvMOllfGokG1m3IAd58t59ZNT0pNuhPZzAnL6XdI3j27WjXiZh\nMn24Xvqh0B7zZMvYGcZadi79mVvwXGgXrvHsizyKpBq5xPPuzfs8T+s/gh8te9tg6uaYj4eizAmd\nh3Y/fza2eN61XeN9afX04b1+fOn847wnZYhtByXLvCeWgZx7d5DXD2cz3rMv0J8JZRwk2z5A/ee9\nDOTsqV+xHwdFpoQQQggh4kCLKSGEEEKIOHigMl/MCPeuTrKOKx4mFNuzRFgylk5IOFaEvLG8jpQS\nTe4N7TNzZMZcLiAUPe4f8nmxObRH5gjDp+cS9i35S+zoz3jDCwFXIBeamSX8G+qTfJRyv3ybMPDh\nTQ4Tu1tAPVN6kIk6HQf37Rt8PbRXTnhyUAbh5PQ7hCun6ske+4MSsjuK5mpC+2P7CbnvFQM95JUE\nm0h4qRvU9+oW2YW1K172XDKSyqUW2uTADe9gy9s1oV1MUqPdb6edE+s4hC3Sw5uONP770B6aJSus\nepPw9OYRZCAzs8YhfOSPu5Gezpymj4eXKFNqmZchdgNZor6Xvkw4h/yzvEq2XEci8vJqLdLm1gzh\n/C1PzbvZQ53HaC77ou0daZPUZ9mThopWkJTfWKsJ7dzs3tCeuoOc21aLP34i63xoXy4io2c8wC8K\n3qYf+o0wf1YUX07Np9JTLyBf9yYhNbc1UU4zs4oxxmq3Jxku9NGwNbdo+42PkvU2MoJk4obIkoom\nPkw5Yozfo/fww4SfQmLqbesN7Z4T3wntcwlIvsVPeh26RywMkVU1fYt5I+VpMq9WvezF5Dcv8P7D\ntENTE2NicINMq9dGGMu19cxFB3Lov4V1/CkvgTL03qdf836azylNRDa+nLU7a7p+mHvUMo8htb42\nwPsam/Cp5iV8auw5+iwnHUny7hqZhBlHvftQO5m7M7Pxj/FkxmaZd/jnwBH069F7jJu9JDKHz8Z+\nFpn7yBvIWaPLPCt7eql/yV3krFteBnJhB3NQ3sPMi/Mv0r7LS8iWDblsQbg1zt2JtdO8PlnOszI2\n4x2OXbRb5uuYQZ4tTMdnhjbpk8w8JPjk1xjbaVnM88mr+OSlbL5jfzrbIiZj3t96BwQndCCX5hcx\np6QdoD+nB7/qlfov27uhyJQQQgghRBxoMSWEEEIIEQcuCPY+00sIIYQQ4icFRaaEEEIIIeJAiykh\nhBBCiDjQYkoIIYQQIg60mBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSI\nAy2mhBBCCCHiQIspIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoI\nIYQQIg60mBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBCCCHi\nQIspIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQIg60mBJC\nCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBCCCHiQIspIYQQQog4\n0GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQIg60mBJCCCGEiAMtpoQQ\nQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBCCCHiQIspIYQQQog40GJKCCGEECIO\ntJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQIg60mBJCCCGEiAMtpoQQQggh4kCLKSGE\nEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBCCCHiQIspIYQQQog40GJKCCGEECIOtJgSQgghhIgD\nLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQIg60mBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSggh\nhBAiDrSYEkIIIYSIAy2mhBBCCCHiQIspIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJA\niykhhBBCiDjQYkoIIYQQIg60mBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkII\nIYSIAy2mhBBCCCHiQIspIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQ\nYkoIIYQQIg60mBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBC\nCCHiQIspIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQIg60\nmBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBCCCHiQIspB5P1\nuwAAIABJREFUIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQ\nIg60mBJCCCGEiAMtpoQQQggh4kCLKSGEEEKIONBiSgghhBAiDrSYEkIIIYSIAy2mhBBCCCHiQIsp\nIYQQQog40GJKCCGEECIOtJgSQgghhIgDLaaEEEIIIeJAiykhhBBCiDjQYkoIIYQQIg60mBJCCCGE\niAMtpv4UnHP/yTn3v3zQ5RA/Ps65JufcDefcgnPuVz7o8oj3hnOu1zn31AddDvHgcM79unPuP7/D\nv7c6584/wCKJDwjnXOCca/igyxEPSR90AYTYY/6emb0cBMHRD7ogQog/P0EQtHzQZRDgnOs1sy8F\nQfDCB12Wv4goMiX+/0a1mbX+af/gnEt8wGURDxDnnH4cCvEBoLGnxZSZmTnnjjnn3t6Rhr5qZqne\nv/0151ync27aOffHzrky79+ecc61O+fmnHO/6Zx7xTn3pQ+kEsKccy+Z2RNm9q+dc4vOuS87537L\nOfecc27JzJ5wzmU7537HOTfhnOtzzv2acy5h5+8TnXP/3Dk36Zzrcc798k74+Sd+onhAHHXO3doZ\nT191zqWavesYDJxzf8s512FmHW6bf+mcG3fOzTvnbjvnDu68N+Kc+2fOuX7n3Jhz7redc9EPqK4/\nUTjn/r5zbmhnjm13zj25808pO+NxYUfWO+n9TSj97kiCX9/xi4Wd+frIB1KZn0Ccc79rZlVm9u2d\nufXv7Yy9v+qc6zezl5xz551zgz/yd34fJjrn/qFzrmunD6855yr/lO96xDk38F+axPsTv5hyzqWY\n2R+Z2e+aWZ6Z/YGZ/fTOv33IzP6xmX3ezErNrM/MvrLzbwVm9nUz+wdmlm9m7WZ29gEXX3gEQfAh\nM3vNzH45CIIMM4uZ2c+a2T8ys0wze93M/k8zyzazOjN73Mx+3sx+cecj/pqZfcTMjprZcTP79IMs\nv7DPm9mzZlZrZofN7BfeaQx6fNrMzpjZATN7xsweM7NG2+7nz5vZ1M77/red14+aWYOZlZvZ//D+\nVUeYbe9jNLNfNrNTQRBkmtmHzax3558/adv9mWNmf2xm//odPupTtj0/55nZl83sj5xzye9TsYVH\nEAQ/Z2b9ZvaJnbn1azv/9LiZNdt2n74bf8fMfsbMPmpmWWb2S2a27L/BOfesmf2+mf10EAQX9qTw\nD4if+MWUmT1kZslm9n8EQbAeBMHXzeytnX/7opn9xyAI3g6CYM22F04PO+dqbNshWoMg+MMgCDbM\n7DfMbPSBl168G98KguBiEARbZrZuZl8ws38QBMFCEAS9ZvbPzezndt77eTP7V0EQDAZBMGPbD1/x\n4PiNIAiGgyCYNrNv2/ai553G4A/5x0EQTAdBsGLbfZxpZvvNzAVB0BYEwYhzzpnZXzez/3bnvQtm\n9r/atj+I95dNM4uY2QHnXHIQBL1BEHTt/NvrQRA8FwTBpm3/oH2naNO1IAi+HgTBupn9C9tWEB56\nX0su3o1fD4JgaWfsvRtfMrNfC4KgPdjmZhAEU96/f87M/q2ZfSQIgivvS2nfR7SYMiszs6EgCALv\ntT7v335oWxAEi7b9K7d8598GvH8LzGxXiFP8hWDAswtse+Hc573WZ9v9afYjffojtnj/8X+MLJtZ\nhr3zGPwh/jh8ybajG//GzMadc/+Xcy7LzArNLM3MrjnnZp1zs2b2/Z3XxftIEASdZvarZvbrtt0n\nX/Gk2h/t89R3kNX9ft6y7fm27M94r3gw/DhzZKWZdb3Dv/+qmX0tCII78RXpg0GLKbMRMyvf+eX6\nQ6p2/n/Ytjc0m5mZcy7dtiW9oZ2/q/D+zfn/Lf7C4C+SJ207clHtvVZl2/1p9iN9atuDX3ywvNMY\n/CF+H1sQBL8RBMEJ25b9Gs3s79p236+YWUsQBDk7/8vekSzE+0wQBF8OguAR2+7LwMz+yZ/jY8Lx\nuLPPscK2/UM8GIJ3eW3Jtn+wmFmY8OP/WBkws/p3+PzPmdmnnXN/O55CflBoMWV2ycw2zOxXnHPJ\nzrnPmNnpnX/7fTP7RefcUedcxLZlgcs78tB3zeyQc+7TO7+k/paZlTz44ov3yo6U8DUz+0fOuUzn\nXLVt6/g/POvma2b2t51z5c65HDP7+x9QUQW80xj8/+CcO+WcO7Ozl2bJzFbNbGsnkvHvzOxfOueK\ndt5b7px7L3s9RBy47bPfPrTTf6u2vajd+nN81Ann3Gd25ttfNbM1M3tzD4sq3pkx295r+mdx37Yj\nix/bGX+/Ztvy7g/592b2Pzvn9u0kihx2zuV7/z5sZk/a9hz8X+914d9vfuIXU0EQxMzsM2b2C2Y2\nbWZ/ycz+cOffXjCz/97MvmHbUYt629ljEQTBpG2vpP9325YdDpjZVdse4OIvLv+NbT9ku217Q/qX\nzew/7vzbvzOz583slpldN7PnbHuhvfngiynM3nkM/hlk2XY/zti2PDhlZv9059/+vpl1mtmbzrl5\nM3vBzJren5ILj4ht7z+ctG1Zr8i29779uHzLtufnGdve5/iZnf1T4sHwj83s13Yk8s/+6D8GQTBn\nZn/TthdNQ7Y9z/pbX/6Fbf9gfd7M5s3sP5hZ9Ec+o9+2F1T/nfsvLDPe7d4qJP687ISdB83si0EQ\nvPxBl0fEj3PuI2b220EQVL/rm4UQ7xvOuV83s4YgCP7yB10WIf40fuIjU/HgnPuwcy5nJ3z9D83M\nmcLO/8XinIs65z7qnEtyzpWb2f9oZt/8oMslhBDiLzZaTMXHw7adnTBpZp8ws0+/xxRR8RcTZ2b/\nk23LCNfNrM10DpEQQoh3QTKfEEIIIUQcKDIlhBBCCBEHWkwJIYQQQsTBA73A9Vc+98lQU8xNDM/2\nsvlT86FdGeVkgfsDs6H9+NQjod2ZxqG5SQmJob2xjGQ5eexwaNd1Z4V28fG3QnvidnZoZy9ThtxD\nHOra2VcU2teSdx8j1ZxYGtrJA7dCO8gO7+q0ofLLof3sBudBti9wpVTC+HhopxZS1raiq6Gd+dLp\n0E7MHwnthYnG0K6dfCG07z/D62Ozi6H91X/yFf9w0j83f+ePHgsbOz2Z7OSUtx4N7YeWF0L77jJf\nm1xDvcZ76IOqDN7f2sQxNFV99H3BJH28WIOvvJnyWmifmvlkaA+v9Yd2+hrvX0jEt8zMIn0k7A08\nRD+X5U2HdtIoJyT0v4rd0Ej9h5Zo66rkAj5nHX+MHZ0M7aKpttDuy+JvJ25Stqojc6F9I6kltP/V\nL//WnvSlmdnv/MaNsGHfuLsavr6UlBLaWY/Rb8HW8dB+NkZffWfrXmhvpHEkTc7qxdC+2rc/tA+e\nYdytX6WNCvfxOcsvUc75I7mhXfJCbWgnFz6/qz6tjc2hnTdLX0WS8YGbmYyjo1v42Aouafkb36FM\naZyiMLvEWZ9peRzCvdz9emgnrHMzSmYDbXphGvuXjmSG9mfOPbQn/fn17/+nsC/7e/EpN07587OW\nQrsvNye0D/fQ2MveOcbVZbT18/dnQru2gMbq8Xy/aYPjg3qPt4d2dzrtvO8afT891xraNVW7DzWf\nC3hW3Oyh/4pL3gjtQ71cizpQxdFGRcX87USUcRptZ0xl3GP+jVbmhXbXPp4DLuNoaBf2MFdkNzO/\n5CzwXZ/8Kx/bs7H5l77VEfbnQ1OU9eIQvlPTzPNkfoLTBqIx5rmLM8yvqQFX4h08wjOnNoXnaepl\nzsW93sX7G/azLXih8lOh3ZvD/PDYGuWcnN99Lu6jK5T7d2rww9KemtCeXmVszmYwftNWeP/ANP1w\npMZ/ZjN3FFXxXdG7PJu6anl/ZR3P+JIt5qC0tLHQ/nsfbnjX/lRkSgghhBAiDh5oZMp+il8ca5e4\nHq03yoq+eIL13cnkp0M7+ykiSgtehODpBaIIHbmcXJ89w0/7zJmHQ3tkjV8eU1P8UpsmiGCJ4/zq\nThhhFf5EDb9SzczKszm3rGsiPbSzyrjhoHaNX0ldA0RVhov5dVqZQv27O6pC+6DjF/9b6/wiS5lj\nJV17ihX2nb7/KrRPDvFLb7Ji18Xce8Kxu6zg7ztW/1N5/GpdTOQOy4oC+r7d++m/mPVsaN9KoY8P\nrp0P7eqy74f2QAntOT3Or+XmrQ+FduEZ+vheO35WOVgT2vmT/EozM7vxCA6Qm0d/5MSoT/Z9roNb\ne4Q6ZM3wHam1G6E9uMIv4cPHaYulQerQepTP3JglQpBQy/cmLvGj6JPu/TkT9qUrRMsaDvNLsrP1\nUmiX9FG30fXbof2VrQY+aJPoa0e0N7SrxvnF+2xOLLTn32Ss3Krk9bk7RMQacnk9ltTJe7KJCkys\n7PZxN/610J5PYpwf2KLfy7Oo50LKn4R24gxtMZdNP1/d4vzBhkTmmvk2/HZunTHbUcEVY1/q5PV9\nqUQRegf5Bb5Xd/Yu38BfBov53voFIkd9XjtEl5i7vldAlKI8hXG9skkfBAdpt8EVHiGb5URxB27w\n+e4a46ApRvR8wTu+LTUbv7m2sDsIUNR+I7Rr8umPlH4inN88RDk+24PvvJD/ldDO7fpcaBfk0i6D\nn+T9qQmM/Uh7amjXblLuznTawraYv6p78fG9JGuJSMvYCGV6OItn5Z0N/D/zDtGbkibmwqcizFNT\n5o3BG0SN24v2hXbBJHPN9EnK0Hr9TGgXD/1RaFcn8nwbL6WfggrmCjOzb2/hV7ElFJTiBKKi00WU\nr2iFZ8dgBvUpSe8N7ZQtxmzuMH2ydJaoaOpBnuWN7UTOFsYOhXbfTEdoRxa9sflhb477M1BkSggh\nhBAiDrSYEkIIIYSIgwcq862PE37c8EK8Y1OEeLe80FpPEpsER2OE2RIu3Q/tS97msfox5JPUQuSy\n6X2EHxNuIp+ciCBhPH+HDaulp5HOGvYhKY6ufX5XfS6uEsquDghFVuYi3XQPELKuP0OIdu1rtMV0\nKSHHgoOEHG/eJ5ye1dgb2uXZhLcTA+SphsLvhfbEzFOhnTt5wfaa2ZPUPambjYpNM8gEy7OEzBcy\n6KekuonQ3v8a0tFSKRv6I7PUZWqAMHzCPjYRjtS8HdrRi7hyejv+dOhJwr/zycgZ6+VIhGZmhxLx\nhesjJ0I76CumPp5cmhNBboqVIuHNBfhdi2ffGKC9xte6eP8dQt4tmWzIPezd/3kxlY2QsUXaaC9Z\nOU8fri7hU3mZbPgeWmTcJXfztwVnkLlS9yN1uBH6bbSPzegDlbRF5zz+UtiKNFBSiI+8UYCc99gw\nEnzaY0j5CQm0nZlZz2Vk38f342MTCwdC+9FVZKnrE/T/Rgr+c8xLUommMcbzZpBkB0aQEnIizC91\nw9S5LY869PTRLi0lyCp7xZ1MpJP5aS5kmMrEZ2fXqGPxEPNdXoT5Z7gIWWgsQJpMX2QctOZg54+y\n4X6liHk8I9lLLMmgbMeMvy30HkU33e7r9oIt2r10hHmzsIyxc/4OfdyXgRxbduNYaK/X8frcBD6+\nPkF/BIvMWUPG60NnvXK/5EntOUhYFyZIDnnc9o6WIeawyzVI1sECz5Nyh//fPssYrOxgk/5MLfOf\n6/Lk3yht9/oE7Tu52RvaxXcpT0kSYyX5CfwoGKgJ7VJvK85aInOomdn8FnJb3jI+9vLMdf5+gPl5\n5RDJXfVttH1aOn073kVf1T/5z0L77UGk3cMvU8/JMtYfidlccpFcxLahsSX6872gyJQQQgghRBxo\nMSWEEEIIEQcPVOZ7pvh8aPd4ksGX8gkhJ3lnSoytINtVLLLLfuCnOMep8BbyREsqUuArAZ+/skxI\nsyAgBNoZRUZ7lGNErLiO97zUSviwvIjPMTNrDvj7lnxC2YMFhFODWT64c5gQ6lIuckBBhidDJHNe\n0rnG+tD+zSghzc+93RvaW5XnQnuqmjD+SnAttKOHftr2mtybyB/jE4RMF/KRXpbTqVddM22XMooM\n2n6As0nMIZelzRGGH8ojlDyYeoXPpGtsxZHl8VYpmZLpG4Ttn96P33R9E38yM+usQrYp8Xwtvag3\ntLNm6NdhR78upSNpRBb5fdK/n2yu9AR8OTJaGdr1y/hv0MnnX6pEFsrI4zM3CwiL7yWrrWR6jXiy\n2NwjSCPVnmwVqafO9VOM36+3Me6aF5FLm5KQwuanqedTw0gVV8qQfYJbSAE187T14D5k8/RFfKp8\nYPfvwulSZI+xu8joyRXUbTyJ93SkIh8fv4OmcWHGOzuoH1n5+YeYI/xzpmKzbE1IaqQ+vYWUL/sO\n0+6bI/T/l2xvSC35cmi3fJv6xhaQbF0NZxG1tTBvRJPwA9tgvsrMPBjayS/RxwUl9OXmAnNawhLZ\nWMmJNaH99BJtPun12UL2K6F9tox5z8xsNA1fqCyi3ZMeQZ4cvYYslLBOpqXLYotHTkBbZ43gR4ln\nGO93mTZt7RAyT9IF2mJxkOdMZP/LoZ1fzPfuJa+mIhrW9OGDFWXMEVf7kf8/PcEc8eYBZKssY86+\ntx/pMK2PZ8u+Bc6lSpllgj1cQjtunUO26+3kGXhkBknxchOyqHt9dzbf5tOcCZb0am9oP5yDjy3d\n4W+6o/RtbToydGUCvrd4kLrFIjzvmgfxl5Vab9tBK2Oz/wj9mfUi64/1Y7/nlfq4vRuKTAkhhBBC\nxIEWU0IIIYQQcfBAZb6Ni4QH288iZx1rR97pHCL8nFHBtTH3vYyLjd8nvPvms8gHVdPIATlbZEO1\nxMgACLLIFKnI5bvSR8i8mhsmNN6SSohxbsm718LMkozv+0GyJ7909Ibm6REO4ntl4sXQPlWMNNLp\nXTtSk0Fo+YU8Dqus/X0OyRyu4rsKY3xXXQLy0bVN6jD2pnd1CueMxsV0JqHh3JnfDe314DHKc5b2\n/e4i8kHLJHXPqKSfoq3IJa1ZyG4Lh+jj6KafefNh7IOEZIt6kI7uLCIRjH/734T25srHdtUneZ3v\nHlhCqsn6OO2+No2EuXUdnzrSjSy0lkhWaMYAmTeryZTbJeDvkSRkpPtenZOHqEPUky1Xh5Bq9pLo\nBN/Xk4qM8+EI/Tx4i/G4lkg5+rNoi8opwu2rm8gQI5nInDZNiD1awvsPLfM5sVpkoo55snkOD3oH\nbWYynyTU811mZo2vUofxXyVEn/88WaXtC98O7axCxmC2p+ZHIswXbxw+FdrNFfjIRgKHHsbauS5l\nc5L2enyZw0kLPoKscPMqGWl7RQLnK9poApXJ99p6ppP2LTuBPHX/Va43aqxBFu++68liP8PcktaF\nLFJdSpsk3OfQ4M4M2n9wiHl2YxW/LqyjX0f7dmespp9FLu9+ybvr5zp/b3183zSKnG2UI08dKiML\nev1zyNQ3LtOvq4eQtfdHGbPHE/muwUbkwtGAtmja4Oows6dtrzjViwS6VsSWh5cHmV9zK3mUt5XT\nJwlehnvZLL6wvohEtlRCg52M0I5Xs6jz+oLXP63Uf2MNP7rhHTr8V8eYd792iEOzzcy8s0MtVsq4\nWF9hLkyO1IT2vq3e0B5pxVfTH2Me2Qr4vt5cviCpimzh631Ih4fr2B5z+j7S89BxMqeT7An7cVBk\nSgghhBAiDrSYEkIIIYSIgwcq8/12OWG2hg4yg77XRsj1/D6K1F1DiH1+hHBl8wmkoWe8u/YuJiC3\nNFUQMsxb5z03hwgh57Uif5V+sje0U73wfN0iGSo3UnbfGZXlCDOmFCKTHLqIbY0c0FiUz0Gac61I\nlWlHyQRcuImU9EQaYfath/mum+1ILBeHCek+tsZBh5VVZD0UOMqwV+RlUOaZVLK2EpIIDfffo5/y\nl5H2pvvo77EomTtPHaGtu16j7xvS8RXbR6h6YfwP+d4tpIT6Ig4qrHKEaqcOkdmRXHxhV30K3yBM\nHM0mfF7zPDLM1jySbVCL77yVRb8eKULOvNtFPddy+MzaJELjvWlIswemkRXuZeODB9dp07kFL4Vx\nD2moJ0uoeB0/Hx/k9ZRG+iG63hvalRu8P2sI6W0rlUzNhQz05ScLqdubs8gNC6fw2cI+7kIr+wYH\nWyb/Dcpc/S3C8/NLyC1mZgn5SGn7h/i+0Rz6J2WSAzwblpHzCza9zJ0IUuDcInLz8iz+md+BdFha\nQpbUaAbjseQw887la0hJaQW7M4T3gvkOpKDCw3x+Vw5yTt5TyDa5rzNX/kLpk6H9vHfIZ8ZpxmZk\nCzk2IYW57u0xJLxoOr/T63IYB4MVzMXnV5hDljrZMjG3RvalmVnKMm098VFk95wLPBO6yzjk90PT\n3B333EovdZhjzp2aJcvt3DD90bPi3QnXQObwG3mUe6ycOpdex89unGKO+3nbO2aepp0273JAbm45\nc2dmK9tm5o/z3Mj1DkBtn6f+Gc34++MTSG23s8nMLs3l2VK1iIy+uoLvXJtlbH3hLOXsucWYiDV4\n87eZ5a6S9ZfRwzaCoQOMzfl6TgU+OEobF9fTV2NTzB1za8ztm+XMI0O3GLMf6+X9fft5ffEM82v5\nHe8e0GrvpFL7uL0bikwJIYQQQsSBFlNCCCGEEHHwQGW+v1bp3QHk3SlXX0FYd/I1QnpFuWTkZCx7\nh89NEZa8u4iU9HAGYda5TsLbbUn8bUkJ0sNcA/d3JXSQobCyRgZAVyKhxyObhMPNzPqyCFcWDBAe\nzajlfVePetlXPYQoB7yspLQE6jO2QIh+rYzMmtFUwo/zyWSJfbiKMO6Vo7ze8Mccmtb6D8ge2ysS\nV2nrjhLa+mgnLjV4ynOvXuTLjGba6lAW/TE+Q7ZNSwnh7Ei2dxjeAKHnwQn6Ka0GKfN+Mq+XJfxJ\naGduEf5eWfNO5zOz3loko/xWQuCZJYSAI0mEupfuU4eSDHznRh5t0VxK5tGNNbL8FsYIt1c+jvzX\nvUg/VW0SMn+lDTmqZcLLYNpD5jZp++gcclAsG39MTeL1SAH98Nxl7rg7neZJm2Nk97Q18XrpZG9o\nd4zwnmdHyFpqT6ftTj5FyH/e87upsxzyVxHdfZ/b0gT+vzXD9xXPID8UZSPVTiUgyZ09QDrcn7zN\n+D07Sb/dq8AXuiqRFSbS8aMc786zV+8g02dEyTBLjHHPmdnfsr0gPQnZdSuH9m0c5Xsn1pCqXp9E\nIhksYU5LjSCpJU57424SybK01pPgjH46FFDfwT4ksuoN2vl2NnPrRD3zeFGKl7FnZsudjMekKBJj\nQSo+lbeEbNd/hL6peYvyJV7Ax48eoG+uJ9Nn5cVkc5VMIt8PjHmHOS4hQTf3M3cvN+2+73OvGLvO\n3NlciYyelM3WhJWId0ft7d7QXl+jXRvOUIfJHj5zNsk72HKN8RUbx0eGEunzVyLMTbUxtkHMDjNP\nRyspT/MQcrGZ2dgacluk8UZo72vHb9e8bL6r84zlAu8Q5WLvEO0zE4zlzgHKXVZIe40d9u4BDZD5\nBnBJS27yZPpR5r73giJTQgghhBBxoMWUEEIIIUQcPFCZ720vDFx4E7kiJZVQen4l2QGrq2SQzDUR\n0k8LkLymOznQLXKEzyyZI9NhKQ35JL/t86Fdfp7swsEI4XDzzuYsz+PAwNSS3XdGWRtZCnn1hEon\nSgmnpqyyXk1rXPJs7+6w64Qio/XIR2vP8frTj9Euzx2l23ou8F2Zc4Q92w9ygFxlj3cIHkpXXHSn\n94T21mXavXWd8Hl9KyHwoJrDDMvvfyu0Jwt5/3w1oeFjEaStgVVC+GP7qVfVBrJF4Tx9fGsOmbWp\nDGm13zv4dTNltyz0zDT3BS4dJYvj3kXKsf8kf38lgn2+FJk6ZwzJZ7aKMpUPc2BrSZQ+u/s9+rs4\nHwljsIR2OTbmZbkUeH66h0xuUb4TjRxoWuB6Q/vWW4TGm0sJvQ9vIkcnTiM1lyQyPtJ7Xg/toS0y\nt06cYPy+NoGsVL1E7P3oJn31/GUy+xKN8Vu+jzY1M9s/hXzwfCGS+tw8slrQwjxSvMBhuWOtyEcN\nJYzrOwmUo3iUsm4s8P6UZKSX4YN8/qfy8NXlGK+/cZvtDnvFRA5zRfYtym/e9oV2bw79WBmHHM5W\nk5FnbyNrvlpG+zbOYWddQV45nPqZ0I6sILVVPUxG6PRF/D27zLtz0jGn5XcgTZmZzXkZXPMbSEzL\nmfhX8pQnw93ieZLkvINzH+Vw4SlvnCbXUo7YFhLR1dHnQzsrQP46mc788tZHmVBrIzyv9pJbk2QR\n5+V6bdaHfFZfz9x5oZv5+MNeG9+/Tubw/PGvh/ZUK7LbQS/zbt3x/Jkv5zDPw9eQP62azOnhl+mb\noS8yT9XHdo/NlUz8cOse4/wa5ybb/ih+e/hhviNtsoYyefPiW8X88UMRnneDq4yFwhl8/rrj/U2X\n2GoxcxzfObnCM+69oMiUEEIIIUQcaDElhBBCCBEHD1Tmq7nL7vhX05C5nvDuT7t2jFBkWRchx+A1\n5J2ZVeS23EOE2692IKsUF14P7f2bHAzWVfIN/vYF5KNaL8TYVkwYMlJOhsLKPbKWzMxW/ir1yW1F\nYuu+gOxTecCTGJKRRooSPOlmCskoZQ6JafxjfObEFb6rKZFw8oFH6MK3B5BRs1IJk+b2EcbcK1wm\nZXsqgcydgcA7rC2TMpSPE869l3Q6tEcC6pJ/Czng9XHC6kWJhFuLFuiojGY+c3YMueTjOfhB+wL3\nbiXn0bb5jpC0mdm8d/9ds+F3qz9DdlN05JnQTsn5z6HddwmfHS9GFi6f4HMajyEHDFyiHHWFyB4z\nXkh6M5P6L88jEU2tEpLfS7K8+yEnbiMfXHb4ZvEC4fP5i0hbGdVIpFOzyHar2bxeEuALpbnUv/QG\nbVpURBadW0JK+eoNyvbQCpLUViN9u3GNLCwzs9eTqMPYMhlH1WlsF6h7jjItpdD2Cbm8PrKGtJnz\nFnPB1UNID+XJHFo7nc/hiYevk8X2+rGa0M5cY+w3ntv77Mzz48xfN8qQrQobGBeb48xLb3sZT5mX\nGWuFedQ3deLx0B5IZ8ymFyN9FmXSJuP5HJbb3svnpO3Df5unXw3t0jVk1oUmZD0zs+ORYUfKAAAg\nAElEQVR5HM55eRJ/XErE1+YO4i/5Y4y7lTQv43qUuTLBa6Pa/fjywgJSe14ln7maQz/dvYf8WdGD\nnBUb5nliX7I949k876BO7/7VtWraIqGdun2hkv5ZGeeZEKs5G9qLC8zBTVuUe2GWOpdtdYR28BLz\n+nAd+2C+6Mi8bDvqZdp6h2hOR3fvLelvp38LosjE+XM8pwoyWRNkXObZd+sYdnEu7XJs3SvfiDe/\n5uHn41Pedp9C5tTkx9iOEsvgWXbhBuuM93IIqyJTQgghhBBxoMWUEEIIIUQcPFCZb+kkWRolz7HD\n/+ZJwonJ6edCeyaV4u3PInR517tjquY2YeZH0wgtXvIOBrsZRXrJyiSsODxMaHmmFNmxYJ0Q4GQb\nB719o5wDvczMmi/xWWuLHNhWexp5I3qDsGFxI2vXgXbvANASQsXpW0iJBR1IWpcOIzfs6+X9l/KQ\nN94uJOzbOEiou/2ROdtrUl/l8werCcNbJ3XsW+Uwy4YMwsrr40iEOV6odrKPNmzIJ/ReW8Jn3tog\nS6g2ER+6mI18k/QQYdsnBzicLsFrk+sNu+//SryP77RG+b7KtS+EdsYCn/Xw1sOh3XeGz1pbJ+yd\nNIOf3nrLCz0nEA5vW0OOPpzMIbJr/RwqOjCJTxyIvj8y38oo/liVhf/n3KcOSVn0W3+UMHwk6h3Q\nt4kM0XqR8ZGTR/vOHkKeG53Af0/kIjcsoaTYxGmkivutyDMFC95htP34i5lZy8eRgDM7kbE2jHHu\nUr1+9qTh3nK2DmReQyIcOsDfPtaA9Nh1mHKnfh3J7+UkMuMe66MOb1bQXg9NeicG7hEXKYKldiBf\nRg2p6uTDSG/NS8iRL4xTtstHOURx/yx9Of0an1P8MB018TaSdVoF70/2MjNdPlmWSUeZ618fQY48\nMs68YWa29grlKDjnzcEjXhZaOllYC2lkeU6n0q8Vc959pSWUL+jnObNWSX+/PUW/fv5VnlEVP002\n6j1P5qtIQyLcS7I3mF/vF/EsyxznvsuEVeaItq0job1/gbZMnUZezn+ScXQnYF67P8gc/FA1YzNl\nP8+06pfIcL62/7nQjhST5VeXw99O9O4+zLQsmz5cmaUcGc1kDE6+ySHHE0/y/Gos5fuye58O7WHP\nx4JWL4M7izE+f46tHelXkPBi2czNhcvc61iUh4z8XlBkSgghhBAiDrSYEkIIIYSIgwcq8xUFSAnB\nGhLWwhVCzrNV3w3tY2tkD00WEsZcmEFuSGwiHNidTqZPbSIh18k+vneyC3vxCcKnY19BCjifTThw\n5WcIHz/Zufugx3vjhDtLot8L7ZktPndx7rHQvp9MKHJ9gxDy6hoSQFISdRjJIuzZNOPdPdVEWD6l\ngLLmDCMrVKYS0k2ZJ0y+VyyP0y5jmUiwVcOElVMOfjG0lwaRrU6lI/feu0cGx4EtwvN3S2nD/nky\ns+b2E4Zd2fCkhHVk0K1rSG3jRUhwI3OUIZLLHZBmZut1tG/5EL8xOu9xuF30LDJGVcDnJl0krFyc\ni4/kJtFGw/n00zfv039V3oGS83NkUs01Hg/t1XzC0NMbHEK4l5R66ayv5nO43ckx784rL7Pv4S3k\n76RlfLw445uhvXiSPhkdIJzf0o80spSFv0QC/H2mDAknOoosejgTX84eJAzfeWy3j492fYLPiiFj\n1AzSh4VlSIPji9wROdaO7+0/SX+Wz9JGozeR/B7xLve68TRScvfdi6G9ucj3Hk6nTf9wBVntb9je\nMHjXO4z0OJL3H4whXz4+i0R+vwaprswxb5b8AZL6qy2M2V/8PL75ajvzcvEwfZbk3YNW18QYT1o5\nH9pDfRyg+tlN5LVbmZTfzOzNGsbz069hd+Yw72xOMt8FnZ6PVNSE9upZxvjAMNnhA0mMwdJJMr+r\ns2i75+qY67O8+aGkg7Leb9h9OOVesZlAmWpXmQvLhpkv52rxu8RxpM393oHV7cPMec1fw8eP1PHc\nuLOJrF9ylz6xOt6/Mk6G5GAFz9OTK4yP5RTaZcXLfjQza4viSxWnOfC34iZj4Z43t9fFaPvgvifD\nDnpzRz7933CYsZYwxzaboU3KtFHXG9qz3gHOU/PM04ldSLvvBUWmhBBCCCHiQIspIYQQQog4eKAy\n34B3P9fdM8gV2VOE4iJJhPq6Vwm/ZQ0hjVRn8f7x+a7Qzn+IcOjIdwjpjgbIJIlbSBVNvciFg96V\nZwnP8l2ji72hvZ5BFoeZWUUfmWiF5RxSl7dO2P9mHlJH4nOsXRvOeBLIHOHavmIv6+0ymVFzNUih\n6Uscbpg1ThZMME0Gxd0C6pa/vvf3uSX/HBkaaS8iB7xYSZbEYwmEg5cKkQD6hwj7pjQTYp4bRDrK\nepmsn4HPkkmyPoJU98oaWWdfOEVo/9YE/X21DFkgmEF6qBnyMsHMbGYCySClGXk51+FrNwcZLlkD\nSERDZWQSVo3xORcL+ZxoP77zeC6HFd5ZIcNoqAy/a4jwvVML1O3uW17oea90ITPLjCF7HBxkbM48\njcR25Kp3p2AWY/NQyr8N7ZFqQvipb9IudxM56K8hCSnhXgZ9/tgl+qev+cnQ7s7Fv56ZRwZ/K0ZG\nXVP77kNY21Mp64lU0tuWW5AG3lqgTw6lIVFsrOIbU5fw4b4W6lx4FL+d72UMrtzleyfMk6ErkCGu\nVuJHx77lbx34ZdsLMiq9+zq/gcR28ghz36UtxkVKFu1YeZKxmfUWc9Enk5i7Rv6IPqgP6L/Bv+LJ\ntEN8/oENZPDpJdqh/DU+8wfNlDmv2MsONrOn05GCOs/wfWWLSK0bhqTecQw5p+kqY2fJe/7sb2BO\ncZ7k2R/heXJ+nnn8tUIk5YWFnw3tlYBxui+bMbSnBC+E5tqklwkb0FeZaYzTFi8Lvm0F3y84znNj\n6ZJ3KOYy9V+oI1Nz7B7P4ugY8mLlKV4/vUbmYE+Mfk5J53lVlEv/mZmdXPLmxTT8ZOYY47zkK8jN\nQSqvx27zuZtl+El2Nr4w1Eafd9Uzvua2GNfVd9jWU5vDPLVS7B2QHEXOfi8oMiWEEEIIEQdaTAkh\nhBBCxMEDlfmWo385tIve4g6rLU+FKj1AmG2ik7C/eRkAp73zFvsbqcLUMOHnoROEtDO9sN/BRUKD\n94b4rrlawv+xy3zvU2dZb/5T7/4uM7PHRgl3fi+fv0+fIfug8jih4tfrKGt0kr+dNEKlLeN8X+sv\ncqBj/hW+d8ZRvtw0wuari4RG04N9oV2Qt/cyX9F1OmE5n3DouQZkuLl+7lEq36JsrUcIGeeOEm4u\ny/cOvfsU7ZN+iwMfpzK9zKDjvaE91k+oNlbLIW9PDhHOvdmA7LI6RruZmTV7/X9lFCnh8Bz3WRXH\nkPD6Vwg3l66QCXZ5kTB88xJy1qyXVfKDDN5TeBxJImgjU2UUFdiWl6hDaT7S715yPR+Zq2GJkHnt\ngCd5Ofo5L51ybC5zgOnim/RtkER2Yqz446H9rWHkib8SIDEktHCHV6ydPmw6hSyw0dsb2jne+aWb\nycjaZmafTaa9OzP5rJg3pVQteHdBdjMvJB9GlnjhLvUsLqUtVq+QxTT1GOOrqB8fKclHRuz/ED5y\n6CpbEJLLGC97ReUm8+CAN5+mPkbW2r6XqUtWQEPOt2Gvz9GXM0YbFh/gjtGNRT7H3SGL6miErQuZ\nrUi2kSqkts1DvD8ndSO0l7ZoQzOzS5uU++OLjLuXDvG+th7G89krSOEpGcy5pc1sA3llmW0E9THm\nMjdFVtzNJeadpPXzoZ02iZzZU4PfZQVkS+4lfZP4Zv5NJoZnGnjGvTJF5uh89LOeTR8eSMPvJse/\nE9qDz3J4asUNtoq4WT5/ZJz5NW2Z5+DIftouqKYtFofom0gCWz/MzLoqaPujQzzXZ+5747wY2XZt\nljpnTfqHPzMGE+o5zHOpGh8+k852lMUCXk9tQs5NwA1t+bs8d4rGf89+HBSZEkIIIYSIAy2mhBBC\nCCHi4MEe2pnOIWidXHlmJdcJpS+nkpWzkY1Msj8Z6eHKEhkAI95hlvVXyETIr7sf2kNJhPdmy3jP\n5CJhxZwNwpUvNPD+AiPs9/EFymBm9tzHkWj2v0kdKssJcY51I/M9VMLnrqUTus5NJIw7FCUT7UQE\nmeyr+RyO1zDE9y5EaIuhXEKmxemEolNmaaO9YjCJLIloHyHTsXXvHq023nPjF7ELvskaviMXaa8v\nibrUzBPaLcok9J5QRntGryMN9NYgN0QzkaNe2cKfgnn6+0T17r78/jDtm9mIn6ZMc9Ddxhah5ylP\n8lvZ4ODYaIDE0pr8eGhvFSFtPZGGjHjVz2Qd4z25p5BSri/Tr0Xre3+Xm5nZkzeQSVZOkRm0OM0h\nqSPPIMmm3WIcFeZyX9hGIaH3ngv4e2HSD0J7cu3R0N6qR7Z9fZJ2t9O0adCHBDvdRNg+ZRQZYj1g\nvJuZvRjl3s0s7168aBV/M5RLG6clUYeObtr7SAb1XL3ImI2dRBatbkdWmva+97E5Mj7nnv/roT0V\n0BaLtfjkXpH3beTFmV/yMqIXad++BKTJ4ix8f2WO+W6xhbYuWWd83b3G3x49ib9Hvfvhojle36Qg\nm7beQLKuL/Zk02zmqIdmkCbNzF7z7prrasBPC7roj/Md3gHMUb5jNsU7IDZgnlobZG6ty0Semqui\nX6N3kTY39yNbDv0/SGGlMe6jy7fdhzrvFUVBb2ivtFDuC8tkAg+W8Ew4EHwrtI91e3LZbbKF3XGy\n/GJvMgcPrOCPBVm0V24h42Bii3GT6D030+6joZ94iOz2O9f+aFd90ltqQrt3hEzSvFy2BWzWcH/f\n/kHqef8sc9DaKhnCRY7PKR2lfKvrfE5B35+Edlsu0uPhN8jGPTPP3NdR9uM9NxWZEkIIIYSIAy2m\nhBBCCCHi4IHKfGlphBMrNwgbri0g1+QlI6uk1hKW/sEyYbxjq7w+H0MmuV1DeL4kStXyu5CJbs0h\nGZwu4XNePfyp0C6b5j620mmyua4OvrirPom9SBQzZcg+1bnePUYbhFZzegiJr6YSQlxupA4bX6as\ndx4iA6hkhYyL5icIoY+9Tmj9oRTkjBdTacdg1Uth2iNSk+nL66cIy69cIKR/f/7Z0D6byoFuPSe8\nu63ukPk4dZDD2W5+l3BzXTX+sTBMKP3RHOSitoB2mBihPMU5hMUjKWS2DK7X7KpPXgUZKondyAej\nyb2hnTTLfW8TRWQlZWxyoF+f4z0HGkjBXLyCZNLlSbb7ooyDtjrKOvsary8v03bLR/HxvaTyND74\n/QmyDXOyCKufe53+GS5C6livpx82epBuptdp04Lsp0P7s0X4zvgM4faZPD4zI0DmPZOE5Dcw5WXE\nlvGe2DryopnZ1YI3Q/twOhmDa96dYcmL9MndHEL9D60xNjsPIBOUreEXE/mM5ZcexT8P/UFvaF97\nhCzHupULoZ1YSB+2HGU+2itWnkWqa1phrC3Oc2hjQSHSyew15JygBmmyf4r+KMng9QxvG8T9fuy8\nNMZdkIIvu0TK0FiClF+64c17PYyJpHX8yczsSweYp79xnc+qNObBlWzmX1eFzNfs+exAPWVdqaIv\nB0eZg3JnmF+2CrCDS2T2VZzCrja2orzt32W3h0z1c4juPu/w1+WrfPeRgO0MJUX47500sh/nUumT\nszwq7KXzSNxrg9S5bpg5eL0E+SsvjWfUVD/y51Q+aXG37pGx5wp3j83DG14Gn3eHbEkJz83G7yK9\nfrmRZ2jCy18N7YZEnolrxlyzegA/X79B/dOq2f7R0INPpbre0C48R8ZncitzwntBkSkhhBBCiDjQ\nYkoIIYQQIg4eqMzXdp8wayzbO6SthtBi6R3ijzlVNaH9SEJvaE96WVlF6cgEjdnIYkuthPbnkrlf\nK+sh71DMW4ScMxbIDOi7TgZEcBq5YKOQg8vMzEqOkrnWfJEDIbvnySBJWiH8eKuR8GZeP7Jl+SQh\n0du/SPnOdfN9m7mEwW9fJ0RdfZL3TyZzUOfH3qB9uz5EeHevKI0Q6g3KaYeBPOTFRS+TousaWR/l\nzpO8kry+uUqYPK+WUHXKLeSy4GlC8p0l3I3YksddW4PJtHPGEjLVQhUh367XLuyqz2qBd+dTOiHz\naA5+tDqKj5RFyfpJTKLO+UNII+OLyKvF2fTZvV6GXcNNpJGct5EPpn+erL393h2SSVNkGO0lK/le\nllU9Ul1mIvWZ2CRcvzmJtJkxRWbk/eGPhXZw1Ht/OpLEFS9zMqUdCXOzkdcTy8mEvLjFXYarA/ST\nG8Cnbmbg72ZmufPIUhNjjLX5Qtr1YAb9s5CDHPTWLO39ZCESw5URpI6C5ZrQfvzbHEA8MkwflmV/\nN7Rn5xmn1SP4/2wifmt7dOZjQiL+m7qEv9xzZBy3VH0/tJc2PxTa05lkVB1PYIxnB95dnIt85vpj\nSDP1LzMXj3qSzeul+IEbYxvA/AVklPUKMly/Wco4MzOrHOIexDPtzDUrJ3spdy/zwsaid2fdCcpU\n385Yay6hjYpTeJ7cjLB1I3EOf3xtlPFRsY40NbqfsV8zufeSrZlZ1yB+fjTdy1r7FP0w10u7dHeT\nqTdSyXaE4hLm43+9yPPq519B2upoQb6+Ucs8eniePsxO5rvWamjTzWnGUEsd8/esQ3Y2M5uMMRaC\nIcZ//yz1aX+ErNhTgxxePZrJ/HKlwrt/M4V+27eAbH3VyxAsdN73luLP+Xco64trZObe6+Bvf97e\nHUWmhBBCCCHiQIspIYQQQog4eKAy39wTSC6lfcgkW9cJPy5lEfbO7SGcOD5MqDCthjXgei4h+dIl\nLzMqkXDouHf3TvMkGSADB5Adk9MJ1zbWE84PUpAFMpMJK5qZZXuyTNoRJKq2BaSRSIQ6l3R7d6z1\nEhKeKuVzH13hHquZyW+E9no2WYWRPMq0PsNndvYR3h4pJsx+8DrZDfZRwqTxcC2fOlb8BocElu8n\nrNy5SLbO4F2kxvpGyjPTSLi17FXKnHKO8G/6p/GVjtuElVsiyDTdy4StIxP05WwLYduxGJ/pWsiQ\nMTOr7cXvMquxs2bJ/rqdigQduUZYuS6H715qIIOr9UUk4vwK5I2Mc2ShdI8QGq/y7iZMv4f0vZBO\nOxbuR3rZSxLXvTvy7jMeV4pp45U8xl1yAlLCzRj9s3IY6XXfTeTu+QC/ri7BR+6ewI8+u0W7vzyC\nLFo59zW+qwT5rz0JmahiYveBidFcxvYPsi+H9idj3P83V4dvNPjnRFYh7d1Oor035pGb19LIDJ0/\nhw8XHKW9ihz+PHDAu8vSu4/vUB/zw16RmI+EdTvgAMOjsxzku5xCvUZXaOtz15FzRh5mvHTdwD/y\nj7I9YuAVvrcykzmtOIO6193BD3KrkN2W63n//S0klcMxtlmYmc2mM7+8lM2BpxmjzP0ZEbL59m0w\ntm9P02cJ0/TToylI2Ve6GYPdXkZxcJOs1vVKXs9Koo8325CUslLwm71kXyZ16Fv/u6Gd4flOQSd9\n6FI4+PmJUiSsHq9/Hi/g/auDPE/S7zOv5Vf1hnbtIZ4zG8PUOWkMaW7Gy9BPWeX5+2whbW1m9kIr\nUv1WIj6WNkO/LeWzPSZ37vO8//DzoV0S5Vmev8WYSuvjWVPjZT8OllKmzcv0Z0Id9ant+3Bot+Uy\nP7wXFJkSQgghhIgDLaaEEEIIIeJAiykhhBBCiDh4oHumjr/F/ojJZHTnig32SowmshdheZOjAQoP\nsx8o2UhlTRxAa2+tJLc4uYTvOruB3nt7gxTtfV1Uf8w7fTo1lzJcn+a4gbyE3Zp4TwX7NErGSA//\nhTz2LLTfZb3aHmGvSHPJQ6E97J3YPZvPyawZqaT7XvTSOtdG2O/Q1Ngb2kEG7ZUaow7DS+wn2Csy\nX0avntx3IbTXZ9Cfu+fYH9FQT1r24kl07MRXsGfLvItPx9jzkn+RPUNPnaLNe5LYi7GRwv6ZqjpO\nxk73LhWuXmDvxY1p0p7NzGIFfPeCd9/uZCZ7CwaSSdf9TBr+9f15dP+JYvpyOoIfDBn7uFK8VOeZ\nefzrkRxOIp7eZB9SYQl7EbZG8Pe9ZK2A/SdbWewtqTf2U6yMY6+tka7eGOX1sXvsudh4hLHWM/9b\noZ0dw/ctmXH33QveJbaH2RtzoZ12z4syDvLT2bCzUUV5zMxmW9lzcWKUPRq/V8merp/1Tla/leBd\n3JxGubduMO9UPMn4T4lR1owBLllePobfRleYX3IWObqhpJu9oGkNe3857qUOUtqfSXw7tLsG2OvU\nMMsevsNT7LFpbaIdP9qLL38vi8/c6GBPXeMW+0vXvCNSJueYo8bfZE9hajFjomvD2/9XyHgqHts9\nz+ZVcsp2TwF7GK3ydGhmDHh7UxvYP2PjPCtKT7G/p3f8I6EdLcaPTr7JXNOfyhxa6p0Gn+o+Gtqv\nP0p/HxjD9/eSnGXaqaWdMuXn8MwZLmWei2TgmyOOPs9NYj/n2hrHT4zt5zLzoj6eUTnezRm9ncxZ\nxd7Fw/MZ9EdDhDmkKGD/00Diy7vq09zCWLt1j+8u2GTPaOvq+dDOKOCIkY11yvSxaxzjcHPU22/6\nBXwh8QbzaLY31+yfZx9ll7cfe3Ody5Abqr0HwXtAkSkhhBBCiDjQYkoIIYQQIg4eqMw3NU14r887\nMsBtEUJ1pUgxx45cCO0/vELY8HP53mWqmYSlF7pIZczLRHq4ewz5L2mG4wx6bnGcwcGYl1rfRJi5\n8TYS4foiEoGZWXMV4cGJREKxC8uEspPzCbnWbv5UaA/mk2afnYJkluOdLtuXST1L25GxCh6lbrNJ\nyFCRTeow30p4t6OBsPxeUdPCOvyFtzhtujgTafITtb2hfb2XlOv1FwgTlyxxTILLRPI6Wc6p8PcS\n8ZWOVML2i4v0zVoxbZKVgzyRnodks9GL/yVmPbWrPoVG2nBiMfbKIDLGae+i5G85T+Yc8tLAo8gh\nCfv4vv4/IWRccZ70/HP7kX8utSJnFZ7Et7qu0X8/0+ydmL2X+BeidlCm3nTGlOt5JLRzP0t9Oq9z\n84DNexfodtJXtSm8vphLu+xf6A3tO+fo/7uv0abDycg2B/MJ86cUeSeJtyHrmZmN1FOHNC9tvjED\nnxk+zFg70kw5ZgY4hmQrh9dd4J2yn4rEXLjOnHLuJuPi9Srk34wp5IarSfhXRTLj+jz3sMbFl+qQ\nL7//HOngpxuQ/F5oZIwcWeVi4ZYxpJOp/dQrbwwpM7kEaSvyAu25fIL5NNKLTxz7HGN/9G3mh8OP\neO3zKj4eq9x900T+KGOwMpt2HFvnZOz1Avpj7BLHOKQnkQJ/q5fXo1W/E9ob7Xzm7Cfom4TLz4R2\nQQY+NJhJnY/eYZzGsnb74F6RPcwYjJyjrP3f5plYsY/tFVeqzod2EOWmgrox3pMzzN9W5SLDvZTF\nuKmLcaZQfQ7zw3Q3klpGOZ8/3es9K1vpm5Gju+es4VtsVcjwLpYuSOZZXuDdbhHppM7VC2zPeLGS\ntj/mPWe3buPzg8azOPs+Y/PlGp6Vj5z1thF4pyHcXvAk5feAIlNCCCGEEHGgxZQQQgghRBw8UJlv\nYJFQXEMp4beba5zSmzZHOHHye0hnDx/FngvIPolskaFR7p2GHvEuPo3NEPYrmSesmH6AUPdMGWHc\nxeeQhmaXeT1auXt3/8xVThPPWiILYqueMPiC8yS5YkLoB3Io9+xFwtjWjPyXOYfsUZF7KbSn3iZz\nI5ZFyDU/jXD6xQrC8g25SE97xgph2PP7CO/3JfJd0wlk1T15Cyk30ZNF7hTggpFu2vetcl4/doDw\n/OgA9S29R0g+iCL5NN1GRuoqORLaDy2R/ZIdIQxtZjY/hKS67yS++co4ZY0Ne2HfUULPyw4ZMm0G\nn8qN4QdVjsyjrXYyxJYC5MKSFdqx6PeIN0/V4h9DabuzEPeK6Vn8PLWE8XV0iQyYi+eRYoYmCOm7\nNmQi9xASZm3s/w7tkUwk7vQN6vNCMZJaYioyVNUiEuFEOVL2dBlZRcczkCFGn9p9kvjSDHLggXzm\nhZluToROX0Im6Bkl1H+kGR/rvYJPpp5mLE+/hS+Up9DPYw4/WovSFtFMvvfxNHwnKXP36dB7wb10\nTjpPrCLDLHqGcqbNkF1a1XohtDuLKeeBIe8i+C5OJc9MxgdXzlL+q9+knxYf9i7qvozsOJpBxupK\nO3PxZgv9fch586GZ5UbYCnCpzbuQ2zHftReThZd9gv6LeheDl1R7p3iPM+4SH6UO39ug/tnerQV9\n4zyXji4i53UncFF7f/be3C7xowSP/FJoX/QumX7Iu+j53t2a0C7Io10XeznFPZKGtNWXTj+kreML\nH65Dkmuf4Fk0eIn+jHkXF6dnI9uujTNnl+bwntkp2tHM7MA688Ws+0pot66yDli61Mt7Cum3DuPZ\nvHSH+jzfynivfJxnzb1Oxn5jFe8/Ncf6IOFb+PPlI7Rd2StImO8FRaaEEEIIIeJAiykhhBBCiDh4\noDJf9z4ydModocXD9WQZTLcjhW19it39sQXCr4uOix+TZwgnDtURxjswgrzTMIk8cS+ZcO2RSqSB\nLC/77Qe1hJwzv0uWSM653RdwFrVz8NnIWULczTFCi5Pp1PlMJzLT7DnC0leX+I70VaSe/GTe35tH\n+DUWQZJYHCNEOT1HBtzBGKHyiQuePPWztie8dZewas5BsjNWR/iugylIZJcyOLSz6VBvaDcMET6+\n1UjdN9Zoz9deI+PpROGroT1zmMPzSm6RaXexgj4+kIakdjOXPk6f3u369d4BoMPfRz6KnCDjKDrI\nb4+yPPp4tIo0rLVBfPl4Lv10q5asotSjSKHLhmwVnUSemK9BesjJIYtuI+X9+f3zRD8SfLfjUM23\nUsnKKktCwsy4Qv+sHUO26kx9LbSHvINH06JIsp2tjOXGw0jBKauE3otbGMvjp7wLVBMI+V+tp8+r\n0+g/M7OeTqTh3Ch9nUSysBWOMF7S06nb5Wtk/2Yd5XN6XuRzijaRzHpykDFG9m5ftS4AAB/OSURB\nVD0R2s0d3mGTTd/H9m5er2jYe9l2YpBKrnmXKt+b5oDEM9PIyIte9tehbtrkei3tu5KFv7d0IO2M\n5iAJt9Qhwdx+Dd/vm6SOT53i9VeSb4Z2bAg5qi17tyw0kohUWZmOf5WtsPVj1TukddA7PLJ7mfFl\nrR8KzY8185xJn2Q8LuXS33l92N2PMJf13mMbwPl+Mr9fPPD+PE7X0tlCcmiOueZ6hDm16Ckk8uUx\n+sHyeX/fEs/NaJRDS0fv9IZ2ZJZ5ajmfZ+h35sj4++uPec/BNuaB7GYkstsxJNhDk7svZ38pwpzv\nupjz044zR6QPM1cnedsu8kYZm11nOGAzc52tPKVrPO/nyhinU4PM5bcqmFNzMvHD5CXeX1TxBftx\nUGRKCCGEECIOtJgSQgghhIiDByrzPeqF+/IqyTYLNgjpFVUSZuvuROo4VkD4cTT2eGiPZyABRPOQ\nmF7m7fbJo8g+p1ORp+6v8r0LA2SnPbPEoXE3jxE+LdjcfS/a/OcJm2d3IhMst3EY4HwVdbiSjmy5\n2YGUmH+ADI1HEwiVXiqhjSr7KevgMvLBLc5CtKYV6j/0IjJq2nGye/aKjf3Il4cnyM7oWCSUfJ0o\nuZWcJHtm9Qpyzvg64VarIQvj4Xt04PUTyAQDjUh+GbcIz17PQv5pmCNc3HGLTKIj+YR5Z+bIUjMz\n60wlc7K8iUNIM+foy+67SAmLtZ6s+xw+0lyNjBHZJDwdqUBS3uqhDkl1+MF0DCmoMOfnQruxGqli\nOpew+F5yoZRxFCzwfZsTZKQlTlGf+034WnISfnpwFD9dWWHcLVbXhPYnHiVLpscY71mDtNHyQcbN\nyWRkx8KTyDwLJfRt7236zMzsXA3S0PJtpIH8BcbwhRzK+mSE8XuwEIki5mW9DRYgP6Uu8p6CRQbh\n3WV8NXsWCShzCWljoMHbXnAPWdi8KwvjYTqJNk0twX8T1hgj80kXQns0wry0VsP2gNgIMm1DEWVu\n66GtTx3kMze7aJOiCS+b7xyv31lgzJ4dQe7tmn8ztPOzGBNmZtWXmVMSH6esvzfPfHGqijm7Nglp\nv8478DO/hW0TF9qYQ7M/Qd9/5Lfw2cuPIqMNLdGO0VIkvz5HG+Vs8vpecuwQ7THmHYyZlUB9ZpKQ\nNmN1yLCZN8naazckv5YYW1SWShkr/atIeOPfQkY7m81Soe0K4z1WzTOw1JgTE5LJPr8+tluCL88l\nc/hm/cdDO2Xjm6Fde5SxvTFC/bsH6M/cWe+wzRPM+f3jHLbal0LWdlMP4/eNIXwq68NkEf7yKhL8\naoxsxveCIlNCCCGEEHGgxZQQQgghRBw8UJlvI+FCaE/1E66L5JwI7cm+3tB2tYR0/3geqerRfYQW\nXRoHutVvIlXkfPOx0P5+QIbKRwsJObbMENJ9KUpYsSvvcmjnTyOrNPVwWKaZ2fUpwvhTEcLXPcno\nWwUkGVjJFhk0ox2Ea/POIKtsZCJJZC55hxKuEtKNFvG9dW9T1sQkQs7pOYTA78yQObhXHCuhjjdm\nekM7qdy7n6mrJrRrZ5CIrAnpqKiP8H7nhJcVeIjP+XDgHQD3u8go/c3Ixo3rSHBTm1525CTZaK9N\n4jfVWWSvmZktlyI93bpIJtlGDYc2ltUSVl7Z8uSpE0gMSauE+q+s0+7J6bxe7Mmf/YOEkotzj4V2\nb4AvF11CtlgoedreD/IMnwqmekM7ls8YvH2DLJmUDOq/vIpkOliPXDo/yJiI3iEjaawR2Wdjkr7t\n9uqcuUXmlR1jjHfkIxfv8w7jPfrYbinh2jhtVr5KWXMned9Hlynf+LgnV6Uz5hOLyGjLXcYvosNs\nF8iIIHtl91Cmgiivty1Qz5IiJNKNQtp3rzi0yRi5tUBmX0IS0svAPHVM6EAKGUqhXuvzyPFuClm/\noIi/bUc5t6xsssjSnkB2em6O3+w5NUhBC0N8/vJJ+n41igRnZlZ0Gv9KvYIMdc74m9FKvvtsjK0S\n1Ws84i7EOGDzbAmfE/y/7Z3Zc1vXfccPABIbAWIhCZIAuO+kqN2UZUmRvDtjp22SOpl22k4nk05n\n+tSZvvXvyEOnb00fkmkaJ03i2JZcW5ZkraY2ShRJcQG4LwCxECQAEgT6dj8HM83YGSB6+n2ejjCX\n957ld869+n3P73d+Tn/du8izgotIe69oUWEzc7y7xoPYR3gHu64m9dqWhIkA61nxJjLpfoMWYRdg\nrj1cZEtBoZE1brLI+86+xjaTcwO8Q7aPYQsJGzKaLUL042yU7RgOL2Oer+X6J77yudk6FzHKTgfr\njmPjklG+3vSpUf7uIs/YOPq+UZ5e187jG2dbQFE7s7HGhrT3mZZQ+pImZ2d36AtbO/11z4mt8jXx\nhxHPlCAIgiAIQgXIx5QgCIIgCEIFvFCZ7+4W7roLsz80yrEeInRsHnb6HyzixrzQgAu1xoxcZn9G\nNMyVLFE1F9uJYrhkxqVnKpHELtWO+9G3hywwvEIyyEgAl+G0uXx3vzWB7DewQMRBcgj3Y2AH+WA8\nw/Ny8yRBMzcgc77ShZRwrIPr0+M8+3ozLt2TvfTRXoKojAU37uemeaJSqoXtt7jGU0G+yetGcBP7\nd3G9p4q43lUMbWDdQjnXg8S5a0cLe7pFJFG+lkRyNYvcv7mX/t8xIQs5x3Aju7SIqtBzLbGdUqrr\nCq7u6wdIqoWfYRemCyRk9NmwZfcj5Jy1XqRHczcSTvCnjIHreMQop0YYY3Oa8euII2dlTyI3XEhR\nz2qyWiSiqVu9YZQPt5FcQgfMo8NVbT76tDMS7yGHZJ38nhsk4tOcIJLGGqA9TRnm/vz+v1GfMGPe\ntsRzw2auT0fKz82MLrMW2FoYK58Hu3o8j2zb183ZjnYn2wKSG9iPyjJPC25k240SyVabnNhqwkV/\n2XPY+ZkPmCML/0R/VYunQex/dZt58X0v9bz+GrbZ+BHbCZTnN0YxO0a0Y2qHV0VbDvl6aoc2ju4i\n201ZBozyuz76/1kUW3alWbtObCHTXJ0pj4o7dLJFwDqM1ByMME/NW4z//2hbDYYKtC3QSDTb7bu/\nMMo9Y4g4zWa2C8QKbEdIWpgHqy1ItvaZt41yLlie1Lla7Gbpv0sKm73cTZttVxnbmhDtPOrhmr1e\nbHwxTnuy59lesFLP9Z5NntVqQ15cD2OzfUGSnybMbHcY+ICkoMfe0bRgpdRtG9c5GpDV5gOsF4M7\nbMHZqsMOH98haXMwiB1Gl1iDVwZJcO0NMte6d7E3UxzbCVl5F2zbWHe78+XviK9DPFOCIAiCIAgV\nIB9TgiAIgiAIFfBCZb6TOWSclWFcl8W4ds5XSIsqSlPeCSEN2B/jlvR6cDOHg0hJN4u4Yl/1ET3z\n6afs3P/2u8iFdQe4Llf3fknd3CTtq3vK3yqlVN6HVFfw4uLt9+Hi3g8gLTWMEz20cxE3Zs11zQ2+\n12mU/VmiI2qO8PtYK+70X1/GXevvwL3dvIAk8eg0fVct7g7jSu1fRG7Z3cFdv53m96tpIulOaFFO\nxZ5/MMqO3L8b5dwiZ3X1x5E+s0eReeILSI35OVzHqWYkq+Rn9NVxE67d58nyCJPeDJFBF638/Vcn\n/t4ou1NIrVkHdpE4SV9oQT8q/wgpZeDsFaP8+I0err+CjecV8rDHStl9iHv6q31s9juqenQsIZ/M\nFZHO0wUt9PAcdl3fgHv/6BNc6XeTl41yrx0X/u3nSDWhAWzT3Mrvx6c1WVBThR33iR6rPUSGyFhx\n/+cfIB8ppdTZIIlUH95m3jr7iGg7ZqMe59JEej29iSSb085LbG4j2nR6n+fV55GD1BGijl3XiZ46\n7OH6HQ9yi+cWsqCWU7Eibl8nCeHLYbY13Fuknp7vYMvBbyFtPP4QWXC4kzmxN06UZm2Y8/gCQV4h\n16yM5VIN8q17g/EbHcL2k/usXXVXmZsXGzVpVSmVqWNSraWZa/VL9HW6BTn+1D4RlfdKyO4DH7MW\n+4KvGOX5BWTFQx8JKXNzRNFte84Z5WEvdv1xkShH3whbK5Qqf1dUwvE2Ilt/74wY5ddWqffcqHYG\n3yBbU+azROQFtpB/fSP0iyfKerxs43e7JqPHU0ihTUtEil++yBwKL7P2N3cyl2Ob5Wtt/xDR6/ci\n2EnMoW2PSTLvtmeQak19RK/nZtk6cP4vmUd3PuTZtTb6yKyoh6eFNqgG7HNvn/4yh2j/N0E8U4Ig\nCIIgCBUgH1OCIAiCIAgV8EJlvl0n7rqgBT/+6gVci10ruBwLp5Fx1i8jJRwN4n5diyMddplwAb4S\nxu0bteBid47hrp7fQIapb8A1uhxAOvTPc881F+55pZTadiIzhDTp7dkS3Tr4OREHBy9p0TGruIff\n+ytc7pNLuCUTPbi3bVpEnu0p7vEjR143ypszRB/E2klW5nyG/FctAgu4VTdfQ1LN3EXa6HEjybU7\nkYv28rSx9i6SwV6AcTpMItPYWnDnLmj95g8i35ZKyF9N8yRnM0WxlaWXOX+xvhuXv1JKXXuGNHBE\nSyTZH9ATnnLm1atF7PSXXyELHhzDpmqsyBDXA0gvw89wJS8UkHKLp+mj2t/Tzr3XsaeaKP1STbYT\nzDVLAAn67FNkNbMHO1ptZP5OaOcOPg8hE7UuI33/Sxjb/DLF3LzxgP/P3S3RF/1Okk2uTmJH/mHk\n1ekNZIWSh/orpdS5EpG2bv18Te28uag1YpQ/3mPM3bZpoxz7AW1YvcOz/XuM7cgwc+35LcYw8Dpr\nU6udfnx8gLTxXieyUrUwjSKXZM1Em91fR/J76WPW3EUrEVKhMHLRlpnfF5uZp7EQ89SywVxzaVsl\nRkr0j6luzChPfkVU2MZR1lPvCfqtzozkrJRSIynWi7qYZnd9yG1t+zzjjoPfT5eQtm48ZP56e1lz\na5LI1/lJ5DzXW6zpwTztmbLQd7WtrCO2RPXXWaWU+nKTd1OTi/dAYlRL/prh93RW20Yxq0WO+ohU\ndFwl2n1TOzPW34JtFqewl/UgMmy/l7l5Yp72d9xhO8KXjUhnvWZNylZK1c8hh6YSRPVbMx8a5Wce\nJLnXvIxVQmnnmjp4Nz++y5oaG2RN+etFJL+Ji9inaVZLSPo29rZzB6nakShP0v11iGdKEARBEASh\nAuRjShAEQRAEoQJeqMw3t07UWrae7zjbFuUdt5Zgc5oov91hZI+lFc0N3I1LOz6CjFj8X6IBTmtS\nimWdKKRgP2480xquyLSd+jjCuG5Ny7gulVKqWKNFR7iIlOnUrtl4DXdlS4Y6tTqQEmZmifyoecaQ\npIvUu3EI9+PaIu5nj5aocyaHW7Z+FVnFFS0/h64a2Cy4j4s3kfZeOYmcZVpD/treQs5IOJDU8g30\ne98u4zE1SBsnD7GD5rmPjHLvAW182EVUSWc/cmpYS675xQ6yQo6uVUopdSbEM5zaWW4fpUli+L7l\nvFH+9MxZo9ySxj29n6bNjiO0p+EekZwPe7CV1hJj07xB/R6cxN3e0IisEmx/R/0paM0xnh810fde\nLxKL44bWRy5ktR4f9XbsIIcsn0Q++Mk8c/Z0vNMonx9ifMwh+it6g/PFbL38rUmTknrrtSSEz8rP\nRYubsLdoiGi1L7axDVszf3N0meiePS990TPHWtDUytqR3kImyPcjPeTXuM/4A8bQcxKb/5ZCnlj5\nstMoH3tXVYXcEmtFZFCTEb1E9a7X0SddJeTI5VrqXK9FQXb1IvOsoJyo4zXI4BMlZNfBAfp2skC/\nTR2yvo9EqYPZjZy6v18emXnHwTManyNhOYdZK9fzSFhNCaT9rRskYN17i2ssczx7NYaNtwdp//MM\nsmDSxZxYjzD2442083yy/P1QLYbfInr9oZak+twsa+1HGSJNnf3I0fUXWJtdX7DoFXqQf1eLyG6u\nSSLtUmEk3IKWlNoa6jTK6Wnqs3CS7QEHnUhzuxNaUlil1MME/z4RIor2MxMy4WCJekwvEQEab8D4\n3twi2nS1g/rNZfhW+LCWa0bNbC9Iprhn9wRjHh5iS4BpGvn3myCeKUEQBEEQhAqQjylBEARBEIQK\neKEy3xEtguLgyd8ZZdsGbm/XyUtGOe7Xrs/gSp8dIILgDU16250iuWN7LW71zXbc2Pa3I0a5dZOI\nhuQsbr+AlsBvsUT0iDmvJfpSSo1qiShzaSSnOYVrsbnE32y6NOlGIc9Nau7U+j7OMbJdI0Ltfopr\n3FaiScK99F2pFVd54SOkEYuHv60WpjHub72PlGmtJSon3q1FZtZTt8wWkUFZH3LZ7gpRij7NJe07\nRn/mGrjPbCf977chx5Wav2eU79gYl1En9vR4qTxSY30dCavR+Sl/U8M5ddEw7uPifxGVdNBP/wb2\ncQ27FpFGZgaYak2HSJuWPvpoM08djtxDRkusUVer4yqVvvBdVS2SI9hpTwJ3+GEaqa52hDFPxZBr\ntlawwUdZZDhvnOu/VUBKeaAlNu0uIuFcW0aGORskgvOwwDxYT5G0MVZgPPdRbZRSSmU11W9fiwYM\n9lP2TjE+D/qxsffSSJWxZZ53bw0p4ZiJNSJ0n7MDrWtEVTU4GfOwi3mRbOo0yjNnOcOME0ErY2aS\ntc/VhOQ35n7fKA/UIGcsBrC7ngzRzttnkVR+WkfE4o99yH+/cHUa5TNaAsbPvmRA6qNIufX9yNSl\nDrZJuLSz/6zW8qSdOy+xTu/qMm8nfT2h2YVLG/x754nO60ny+64WpGv1IrXfttCeQRfRv6Upft91\nk8yxfZ5tILa2iFbrYVUtHONEWHpTWgLfJfp1x8GzfUuskQs25u9YF3LrnA358/w6kazPa9mK8lIX\nfRdJIAV+VmQ+njBhO8vaey+wib17Nn9f1p7CUSIvH7uQCXPjyH87K/R9Qov8fz1Pf2+mtajopYhR\nHmjGbvvOMGcjLuZCOIQtuE/wLs4+Yq2tHfvjzs0Uz5QgCIIgCEIFyMeUIAiCIAhCBbxQme9wB3d4\nowuX42wLMlxPikgOe4Jr/IVOo7yRJ9pm1on7ORFA/ipp0R2bu7ifvcvIR/fMuKK95i+McnSEaAj7\nQy2pZJ92YJhSatGO3GjeQLr5zhCyx0eTnGmUiuPWLtbilrYlkXqaAtTvWiPnzbWe/tIoz5Zwddb/\nimsCQyRxi7txdQYOcA1Xi1ozkYMtedztWS2BZfoQ93TwR/RV+BaRd3v2T4yyfVZL/umgH3ZiEaPs\nV7iPSxZkng3bXxjl3f9mzHq7kAw+ryfaJDxWLtluXcFl3NU5apRDFv5maQcJz32KaEzz9ohR3l+j\nPdlTuI/bbMiZfS7k6FsxXNuNfiKGxm3I133t1DUb/dNEDMXi1KNpl77IdiKBzEwwH499D6nnP2eY\njxfaiR7riHQa5eIAc6Ldwnw//JK+6z+uSad7RCGt19FmV4yz9ZpKyAUFK/2ulFJDs0RAubxEUprj\nSHihFJKW/wl1jb2GTFLzkKiijh5k3vgedVpcQxat9SN525SWzHWCSDffEmtc7+EHVPrSP6pq8MYF\npO00S6KanUfbyjSSeDFYYn2MrtOWiedIVZ0W1pad06wtpjvIKHe92Ls6jy13diGVH/UiQUYjSL9r\n3chR3lT5a8l2lfs2tRDBObuKJGW1M6cSZu7btsh4+HuIeJvSEj9bSkR4OrP8rXeT80GTWrJn1w3m\n/tgI9/8qhi1XE9dLyNEH8xGjnOljjcyMMw43FXXtyCMF3jARjezPkAjU5COh7NF9+npql/fjnJW+\nawkwths1zMGamdtGeTHGeYKtw+XJTE8onjdlvmiUS9Ns1YibWYM7erCH28202aWd8RqYRZK0t/+W\n+2zQnmYtSjubQra8O858P32UdaMnStLab4J4pgRBEARBECpAPqYEQRAEQRAq4IXKfGthIvKiWuRD\n3zLywUL4VaPcvIgcUFuP1NGVQAKodeFm9F/H7buZRG7Y8msu7QC/u3aRHVt6kJgOt6jnQR/u5/Y0\nvyullHsGN/4DM3LQrAOZZKQOWargIFnjlSwu96E93P5Pd3hGk5lv3VO3fmSUx2evG+W5U7jN09mr\nXN9NlMXEPLJXtdhK06cRPzLi6SBSpvs47vDtK9QnFkISDcSIvMucRlK6M0WCwbANiXDdhezizODy\nj6/iku64wLis7yBHdnhwKffMlv8/orEW9/HNGNE6zgwubbeP+hU2tEjTHmyq4GWM61qRpHpi9NEn\nRSSTTj8RMNYtpLaBIdq8tIy8ZCmWy5PV4rD+V0a5uQ654n6CxICBOur09Dky19AW7v3JFX6v2Ud6\nmZ5lfpwbY77HW5GMHv4KeartuJZ4cAVpbl+Tp8xLRBSm6sslls065CqlRfZOrTLuCyeQGzo2sJnE\nBHL+vSjz99UoUsfuu1zfUMdcnttAemiJsnbkLyKFWl+mzRsHRKRWi9YjyOhzc8g8b3UQwXRjh6So\nubQmU1uw8bAm8bpdyGKRVe4/lo0Y5Z85aONLJqQzk5ctFL/z0m8nB1lza1YZyysbjLdSSvWduWSU\nmyaYm20XsLWrT7A1U4GIrMYg4zFZhzSdXMWW396ljx6V0EWfD7ImxPeJKMy9hIT1LEIEsstVnji2\nWtzS7N8bRfJ79AT52hei70cvU6fkO0i4ppxm79vYtbmTtXPbzVrTXkMy4gbrD4xycZm+8DUhi2aC\nRMS/Z9LOzaxhDJRS6vE15mDfCO+m9jPM+YlZ1ojWLn7vXESqKw3xHbBYw/Vjs7xfokXsyqVFY2+8\nQ5u714g6jj3hbzcU21c0tfwPIp4pQRAEQRCECpCPKUEQBEEQhAp4oTJf9x4u7YIHF11I4bqbqUEa\nce7ilrW0IaW43UgPKkcT6oNEn7R24aI+24drNLKHlBLZwp1f48TlvGkiEjCyg4uxPY1rWCml9h1a\nIsYA7sSEW0sw+gSpa7kRt+GfF3H1H6zjZjcVkAw6j+ByfDDH/dcHqHfzHu0MWmiDZYZnuW3lCSqr\nwaED97G9DilsxY/rPZPAlRrGA6wsU9pZgQ7cs7lVXPXRIlKpO80fN5txVe/7cM96SriS108hMXR+\nhhQ4P0U/r/nL5bL5VpLHXVh82Sin/bjSZwfo08ACNpWJIdM2aGcBnhxHkpprJ2Lk2JzWBjvyV6mI\n9GK2I396W39ulA9quWc1cUWQQA9KzMfDfuz08Amue2/oslHeLdLHbfew389eJTHkuZ8gtyZeIXmk\n9RH3tw9+bpT9SeRSTxD5ZKof6cXpJ4Lv5QesFUop9aAXic20SOTSqJv5nFnQZEI/41m3x33fbqQe\nQ4OM4fo1bDj6DhHFl0zYajLGNSktGeTOITKJvY26VYvf3UHmGXXSDw+WtXMGbcgzB6OsV9Z9bDP+\nH0hBiYImBf0tc39dO8d09IBnHdxENp600Ce+77Mto3Yeqbyuief6vciISikVTSHtnW7leZcVa7ml\nyPYCvxM7ysyRULdjj/ZMa9sy7nezjg/msIkbOaTi+mXW3OI6CSVTfax3qxnGVanXVLWwz2lRoWNE\nJzevE8Hn0qITj/2Q+i0X6KMr+0SQL1np74dO3jMFTeb7cZK+jrUSTe6I0V+3MmxTOOPm96cetmOc\nb9fe10qpIRf9Gg/wvP19xrC5DpvZW6PNOS8RdskY/eI8IGJwO8SWigYH98/G2QZ0dhF7zgZZU2Mp\n2uM58cfJtuKZEgRBEARBqAD5mBIEQRAEQaiAFyrzZQrIMgVNcplw4sY9tY4r7okWBRCPcVbXSAp3\nYL4b96urCbnJdIf71IS4j/MBkT0bNtyNp3NEm/Xe5BrTKO7Kh3vagU5Kqd4uum95HJfg4PdxLbYG\nqMdwhvJ0HxFdwSz1HkoRGZWdpR5OLeGYawM3+NI7JB8bmEEySX5OgrbCpfJoimrQmkPyOURVU7Y9\nzaW/j8S5WkNyuxUfUk3Mxfe8z06itjM+JD/zHPdZSeK237VpZ4oF6dvFn2vJTk8RgdUU4zy1x1H+\nViml/CHkn2wz5+LFXCRx83yCvWw6cKufszKWCzYib2b6qOvqLVzvjRaiSOtyjE2mmzmRyuPOblnE\nzvZb/rjzor4pf6aw7d+coe+P3Memet9DGmpcIRntB9pZZcV/pu/+5ivt3LJ/JameWqXN02/hwv/2\n6ltG+a6JNhc3ka9PtiCpzi8zb/xvUgellKrPIS0cdpDE8NTk74zy0wGSytrmsc/PrW8a5dMF7Goh\nwTU7Z5GJhrSElh477Vl9nzPM8nMRo1yqZY70HZbXuxoECiSXtdhYv2rX6dPtAvb/fBGZ8tDNmmML\nIH2f8SGROT5mjHN++nnNzfywtWsRqBvIS9ZPiN566qPfEnnmn8mC1KKUUpYsiRc/f4NyaIGtIs8P\neA/E7chfHXZk918fMJZtB0SO3pzDPi7v8nt7P+18Gu40ypf6eK7lFmcNjuSRyqtJWxDJMJFCXh8e\n1M6vtLJdwruJNH31JPYYtiBlh7fY+tGwye9nlllfYh1cc6EeG9m301/vHWWNu3fINphXHUiHSe25\nSilVb8MehtJsqdnW5mPNM559pIHo9fGbtNnjQSK/5mAeNedpfzjAe2qhlm0a+Q3mRW8DcuHwHBKh\nNVz+jvg6xDMlCIIgCIJQAfIxJQiCIAiCUAGmUqn09VcJgiAIgiAI/y/imRIEQRAEQagA+ZgSBEEQ\nBEGoAPmYEgRBEARBqAD5mBIEQRAEQagA+ZgSBEEQBEGoAPmYEgRBEARBqAD5mBIEQRAEQagA+ZgS\nBEEQBEGoAPmYEgRBEARBqAD5mBIEQRAEQagA+ZgSBEEQBEGoAPmYEgRBEARBqAD5mBIEQRAEQagA\n+ZgSBEEQBEGoAPmYEgRBEARBqAD5mBIEQRAEQagA+ZgSBEEQBEGoAPmYEgRBEARBqAD5mBIEQRAE\nQagA+ZgSBEEQBEGoAPmYEgRBEARBqAD5mBIEQRAEQagA+ZgSBEEQBEGogP8DN38lLFuogckAAAAA\nSUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f773ddd3990>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Visualize the learned weights for each class\n",
    "w = best_softmax.W[:-1,:] # strip out the bias\n",
    "w = w.reshape(32, 32, 3, 10)\n",
    "\n",
    "w_min, w_max = np.min(w), np.max(w)\n",
    "\n",
    "classes = ['plane', 'car', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']\n",
    "for i in range(10):\n",
    "    plt.subplot(2, 5, i + 1)\n",
    "    \n",
    "    # Rescale the weights to be between 0 and 255\n",
    "    wimg = 255.0 * (w[:, :, :, i].squeeze() - w_min) / (w_max - w_min)\n",
    "    plt.imshow(wimg.astype('uint8'))\n",
    "    plt.axis('off')\n",
    "    plt.title(classes[i])"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
